Docker安装及基本操作

系统环境

  • CentOS Linux release 7.5.1804 (Core)
安装依赖包
  • 更新系统软件
yum update
  • 安装docker
yum install docker
  • 启动docker并设置开机启动,查看启动状态
systemctl enable docker.service
systemctl start docker.service
systemctl status docker.service
  • 查看安装位置
rpm -ql docker
  • 安装docker仓库
yum install docker-distribution
  • 查看安装位置
rpm -ql docker-distribution
  • 启动服务,并设置开机启动
systemctl enable docker-distribution
systemctl start docker-distribution
systemctl status docker-distribution
  • 查看docker版本
docker version

docker基本操作

  • 搜索镜像
docker search centos:latest
  • 将镜像拉到本地,然后就能通过docker images查看到
# 以下两种方式,一种指定镜像来源,一种默认官方源
docker pull docker.io/centos
docker pull centos

由于docker是国外的,中国区访问质量不是很好,可以配置一些国内的镜像源

vim /etc/docker/daemon.json

修改为下面的内容

{"registry-mirrors":["https://registry.docker-cn.com"]}
  • 查看本地镜像
docker images
  • 查看本地容器
docker ps

不带选项只显示当前运行带容器
加上-a选项,可以看到历史运行容器

  • 运行镜像
# 以交互式进入容器操作
docker run -it 镜像ID /bin/bash
# 下面这种方式,带上--rm参数,表示容器运行完退出时一起删除,节省系统资源, --name则是给容器起个名字,这个名字和容器ID的效果一样使用
docker run -it --rm --name cmdb centos:latest

  • 进入一个已经运行的容器
docker exec -it cmdb bash
  • 查看容器与原始镜像内容变化
# 会列出容器修改后的路径及文件位置
docker diff cmdb
  • 保存容器
docker commit -m "注释信息" 容器ID tag标记
# 如对cmdb服务器内容修改,然后创建一个新版本,类似git版本控制,这样下次启动基于这个新版本,就不在需要做上一个版本与这个版本之间diff差异的操作
docker commit --author "zengchunyun" --message "update index.html" cmdb centos:v2
 
# 通过查看docker images就会出现新的镜像版本
docker images

# 以新版本镜像运行cmdb
# 注意,运行新版本时,要确保上一个版本的容器分配的端口不能和当前映射的端口一致,否则无法启动
docker run -p 80:80 --name new_cmdb centos:v2
  • 删除容器
    删除容器前,如果容器在运行状态,需要停止容器

  • 停止容器

# 以下两种方式都可以停止容器运行
docker stop [CONTAINER ID]
docker stop [NAMES]

  • 删除容器
# 以下两种方式都可以删除容器
docker rm [CONTAINER ID]
docker rm [NAMES]
  • 删除镜像
    默认删除镜像得保证该镜像不被其它进程使用,也就说没有运行在容器里,可以使用-f参数强制删除镜像
docker rmi 镜像ID
posted @ 2018-07-28 19:21  曾春云  阅读(204)  评论(0编辑  收藏  举报