1.docker服务安装及启动
yum install docker
#设置开机自启动
chkconfig docker on
#启动docker服务
service docker start
#查看docker版本信息
docker version
docker info
2.镜像获取及使用
#查看镜像
docker images
一般刚安装docker后无镜像,需要获取镜像。
获取镜像可以是已有的其他模板镜像或者已有容器制作成的镜像。但这里介绍下从网络上拿取初始基础镜像,然后再继续扩展自己所需的组件,制作自己需要的镜像。(需要对公网络,公司内网可咨询it运维部门)
比如从网易云上拉取镜像https://c.163.com/hub#/m/home/ (亦可以是其他镜像网站)
拉取centos基础镜像,点击镜像详细界面,复制命令
docker pull hub.c.163.com/public/centos:6.7-tools
拉取镜像后,docker images 即可查看到镜像。
#使用镜像创建容器
docker run -d --name 容器名 -p 宿主机端口:容器端口 -p 宿主机端口:容器端口 -v 宿主机映射目录:容器内部目录:rw -v 宿主机映射目录:容器内部目录:rw REPOSITORY名:TAG名
比如:docker run -d --name test_docker -p 35000:22 hub.c.163.com/public/centos:6.7-tools
若镜像模板无ssh登录协议服务,则需
docker run --privileged -d -it --name test_docker -p 35001:22 hub.c.163.com/public/centos:6.7-tools /usr/sbin/init
进入docker
docker exec -it test_docker /bin/bash
此时是在test_docker容器内命令行
配置yum源后,可使用yum安装ssh2服务
yum install openssh-server net-tools -y
(修改root密码等,使用xshell工具连接是否正常)
#装好其他服务后,即可通过命令将该容器提交为新的镜像
docker commit <container> [repo:tag] # 将一个container固化为一个新的image,后面的repo:tag可选
比如 docker commit test_docker test_basic:test1.0
如此迭代可制作自己想要的镜像模板
docker常用命令
#删除镜像
docker rmi 镜像名
#查看容器
docker ps #查看运行的容器
docker ps -a #查看所有容器,包括运行和停止的容器
#启动容器
docker start 容器名或者id
#停止容器
docker stop 容器名或id
#删除容器
docker rm 容器名或id
3.持久化容器或镜像,用于备份或迁移环境
#持久化容器
docker export <CONTAINER ID> > /root/容器名.tar
#持久化镜像
docker save 镜像ID > /root/镜像名.tar
#导入持久化容器,导入之前先删除原容器,避免冲突
cat /root/容器名.tar | docker import - test_basic:test1.0
#导入持久化镜像,导入之前先删除原镜像,避免冲突
docker load < /root/镜像名.tar
#导入之后需要添加tag名
docker tag 镜像id test_basic:test1.1