最近接触到了docker,发现docker的强大和简便,很多企业都在使用docker来部署项目,所以近期开始学习docker。这个学习模块依旧使用Linux系统Centos8.0发行版
docker安装:
安装步骤就直接按照官方文档进行操作了,在左侧导航栏选择自己系统的版本进行安装,我安装的是CentOs发行版的,推荐直接使用root账户安装,在安装之前建议先更新yum,否则在安装docker引擎那一步可能会出错。
# 更新yum
yum update -y
卸载老版本
卸载老版本主要针对已经安装了docker的小伙伴,如果是第一安装可以不用执行这条命令
# 卸载docker
yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine
安装方法
docker提供了两种安装方法,一种是通过yum直接在线安装,使用这种方法比较简单易维护,后期可以自动升级版本;另外一种是在官方网站下载rpm包进行手动安装;对于我这种手残党来说肯定是选择yum安装咯,简单方便
通过yum安装首先的设置存储库,可以方便docker的安装和更新
# 安装yum-utils包,它提供了yum-config-manager
# 别问我它是干啥的,这个时候你应该去百度
yum install -y yum-utils
# 设置仓库
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
以下三个命令是可选的,可以不执行
# 启用nightly repository
yum-config-manager --enable docker-ce-nightly
# 启用测试通道
yum-config-manager --enable docker-ce-test
# 禁用nightly repository
yum-config-manager --disable docker-ce-nightly
完成以上设置后,开始安装docker引擎
# 安装最新版的docker引擎
yum install docker-ce docker-ce-cli containerd.io
如果报错(package docker-ce-3:19.03.8-3.el7.x86_64 requires containerd.io >= 1.2.2-3, but none of the providers can be installed),先安装containerd.io,在安装其他两个,containerd.io可以在这个链接下载找到最新版
# 安装containerd.io
# 下载完成后选择'y'确定安装
yum install https://download.docker.com/linux/centos/7/x86_64/stable/Packages/containerd.io-1.2.6-3.3.el7.x86_64.rpm
# 安装docker-ce docker-ce-cli
# 如果在这一步报错,建议先更新yum
yum install -y docker-ce docker-ce-cli
除了自动安装最新版,docker选择自己其他版本安装,如果已经自动安装可以跳过此步骤
# 列出可安装的版本
# 版本号从高到低排序
yum list docker-ce --showduplicates | sort -r
# 选择版本安装
yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io
完成以上指令后,docker就安装成功了,可以通过’docker version’检查我们安装的版本
docker启动、停止、状态指令
# 启动
systemctl start docker
# 停止
systemctl stop docker
# 状态
systemctl status docker
# 重启
systemctl restart docker
# 设置开机启动
systemctl enable docker
docker启动后,运行hello-world来检验是否安装成功
# 运行hello-world
# 会自动下载hello-world镜像
docker run hello-world
docker安装到这基本就算完成了,接下来说说关于docker的指令,在控制台输入docker会打印出一些指令
管理指令:
builder:管理开发者
config:管理docker配置
container:管理容器
context:管理上下文
engine:管理docker引擎
image:管理镜像
network: 管理网络
node:管理群节点
plugin: 管理插件
secret:管理docker密钥
service:管理服务
stack:管理docker的堆栈
swarm: 管理集群
system:管理docker系统
trust:管理docker镜像的信任区
volume: 管理容量
一般指令:
attach:将本地标准输入、输出和错误流附加到正在运行的容器
build:从Dockerfile生成镜像
commit: 移植镜像
cp:在本地系统和容器之间复制文件
create: 创建一个新的容器
diff:在容器系统上检查文件或目录是否改变
events:从服务器上获取实时事件
exec:在运行的容器上执行指令
export:以tar格式导出容器的文件
history:展示镜像的历史信息
images:展示镜像
import:从tar文件导入内容来创建镜像系统
info:展示系统范围内的信息
inspect:返回Docker对象的低级信息
kill:结束正在运行的容器
load: 从tar文件加载镜像
login:登录docker注册表
logout:注销docker注册表
logs:获取容器的日志
pause: 暂停容器的所有进程
port:列出端口映射或容器的特定映射
ps:列出正在运行的容器
pull: 从注册表中拉去容器或存储库
push: 将镜像或存储库上传到注册表
rename: 重命名容器
restart:重启容器
rm:删除容器
rmi: 删除镜像
run: 在新容器中执行指令
save: 保存镜像到tar文件
search: 从docker hub搜索镜像
start:启动容器
stats:显示容器资源使用统计信息的实时流
stop:停止容器
tag:创建引用源映像的标记目标映像
top:显示容器正在运行的进程
unpause:停止容器的所有进程
update:更新容器配置
version:查询docker的版本信息
wait:阻止容器直到停止,并打印退出信息
docker的安装就介绍到这里,管理指令的具体使用在后面的文章中会一一展示。
来源:oschina
链接:https://my.oschina.net/u/4363024/blog/3274345