旧话重提,有些日子没有安装docker了,这也导致忘记了如何操作,踩了很多坑,特此记录一下,如果还能帮到大家就更好了,如果帮到江湖朋友了,就点个赞,在此谢过
以centOS 7为例,首先要确定Linux版本
新版本的Docker对Linux系统版本有一定的要求。如果Linux的发行版系统是centOS,安装最新版的docker需要centOS 7以上的系统。
在Docker安装帮助页面查看支持的系统版本。
可以通过命令查看linux系统信息
cat /etc/os-release
1、安装必要的一些系统工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
2、添加软件源信息
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
3、更新yum索引列表并安装Docker引擎
sudo yum makecache fast
4、yum索引列表没有更新可以直接使用yum makecache(若有报错请翻阅第四部分第二条)
docker-ce:社区版的,docker-ee:企业版的
sudo yum install docker-ce
5、安装过程中会提示确认,输入y以确认
6、开启Docker服务
sudo service docker start
或
systemctl start docker
7、测试是否安装成功
通过命令
docker version
若安装成功会提示以下信息
8、测试Hello World
docker run hello-world
或
sudo docker run hello-world
此时会有拉去成功的签名信息以及欢迎语句,当出现"Hello from Docker!”时,代表我们镜像安装成功。
9、查看下载的hello-world镜像
docker images
或
sudo docker images
1、列出容器
命令:docker ps [OPTIONS]
OPTIONS说明:
-a :显示所有的容器,包括未运行的。
-f :根据条件过滤显示的内容。
--format :指定返回值的模板文件。
-l :显示最近创建的容器。
-n :列出最近创建的n个容器。
--no-trunc :不截断输出。
-q :静默模式,只显示容器编号。
-s :显示总的文件大小。
2、进入容器<请先看完两者区别再使用>
(1)attach命令
attach是Docker自带的命令,命令的格式为:
docker attach [OPTIONS] CONTAINER
(2)exec命令
从Docker的1.3版本起,Docker提供了更加方便的工具exec命令,可以在运行容器内直接执行任意命令。命令格式为:
docker exec [OPTIONS] CONTAINER COMMAND [ARG…]
区别:
当多个窗口同是attach到同一个容器的时候,所有窗口都会同步显示;当某个窗口因命令阻塞时,其他窗口也无法执行操作。
可以使用 docker exec -it 容器id /bin/bash 进入容器并开启一个新的bash终端。 退出容器终端时,不会导致容器的停止。
使用 docker attach 容器id 进入正在执行容器,不会启动新的终端, 退出容器时,会导致容器的停止。
1、添加源时遇到如下报错
解决方法:遇到该报错,基本是由于没有配置dns,导致无法解析域名,配置dns后便可以解决
2、在安装时若报错如下
。。。。。。
- 软件包 podman-3.1.0-0.13.module_el8.5.0+733+9bb5dffa.x86_64 需要 runc >= 1.0.0-57,但没有提供者可以被安装
。。。。。。
- 软件包 docker-ce-3:20.10.11-3.el8.x86_64 需要 containerd.io >= 1.4.1,但没有提供者可以被安装
。。。。。。
- 软件包 podman-catatonit-1:3.4.1-3.module_el8.6.0+954+963caf36.x86_64 需要 podman = 1:3.4.1-3.module_el8.6.0+954+963caf36,但没有提供者可以被安装
- 软件包 podman-1:3.4.1-3.module_el8.6.0+954+963caf36.x86_64 需要 runc >= 1.0.0-57,但没有提供者可以被安装
(尝试在命令行中添加 '--allowerasing' 来替换冲突的软件包 或 '--skip-broken' 来跳过无法安装的软件包 或 '--nobest' 来不只使用软件包的最佳候选)
此时可以使用如下命令来解决这个问题:
sudo yum install --allowerasing docker-ce docker-ce-cli containerd.io
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。