下载安装包
https://download.docker.com/linux/centos/7/x86_64/stable/Packages/
安装
yum install -y docker-ce-18.06.0.ce-3.el7.x86_64.rpm
启动docker
systemctl start docker
停止docker
systemctl stop docker
重启docker
systemctl restart docker
查看docker状态
systemctl status docker
开机启动
systemctl enable docker
查看是否安装成功
docker info
查看docker下的所有镜像
docker images
搜索镜像
docker search 镜像名 (如docker search tomcat)
拉取镜像(下载)(国外的比较慢可以用国内的地址下载)
编辑:vi /etc/docker/daemon.json
{
"registry-mirrors": ["https://w5z91a3d.mirror.aliyuncs.com"]
}
修改保存后输入如下命令
systemctl daemon-reload
systemctl restart docker
下载命令
docker pull 镜像名
删除镜像
docker rmi 镜像ID(即IMAGE_ID)
查看正在运行的镜像
docker ps
查看所有容器(启动过的历史容器)
docker ps -a
查看最后一次运行的容器
docker ps -l
查看停止的容器
docker ps -f status=exited
创建容器
docker run
运行容器 -i
容器启动进入命令行 -t
给创建的容器命名 --name
创建守护式容器在后台运行 -d
端口映射 -p(前者宿主机端口 后者容器内的映射地址)
目录映射 -v(前者宿主目录 后者映射目录)
交互式容器
退出容器即停止 docker run -it --name=自定义容器名称 centos:7(镜像名:版本号) /bin/bash
退出容器exit
如 docker run -i -t tomcat
守护式容器
docker exec -it container_name (或者 container_id) /bin/bash(exit退出时,容器不会停止)
停止容器(docker stop 容器名/id)
如docker run -t -t -d tomcat
进入运行的容器
docker exec -it 容器名 /bin/bash
启动已运行过的容器
docker start $CONTAINER_NAME/ID(即容器名字或者id)
将文件拷贝到容器中
docker cp 需要拷贝的文件或目录 容器名称:容器目录
将文件从容器中拷贝出来
docker cp 容器名称:容器目录 需要拷贝的文件或目录
目录挂载(创建容器的时候将宿主机的目录与容器内的目录进行映射,这样就可以通过修改宿主机目录下文件从而影响容器)
创建容器 添加-v参数 后边为 宿主机目录:容器目录 name为容器名称 centos为镜像名 7为当前镜像的版本号
如: docker run -di -v /usr/local/myhtml:/usr/local/myhtml --name=mycentos2 centos:7
注意(如果共享的是多及目录会出现权限问题 提示:permission denied
原因:centos7中安全模块selinux把权限禁了,使用 --privileged=true参数解决
docker run -di --privileged=true -v /usr/local/myhtml:/usr/local/myhtml --name=mycentos2 centos:7)
查看容器的各种数据
docker inspect 容器名
查看容器ip
docker inspect --format='{{.NetworkSettings.IPAddress}}' 容器名
删除指定的容器
docker rm 容器名/id(注意只能删除停止的容器)
删除所有容器
docker rm 'docker ps -a -q'
创建mysql容器
-p表示端口映射关系 -e表示添加环境变量 MYSQL_ROOT_PASSWORD是root用户登录的密码 mysql是镜像名
docker run -di --name one_mysql -p 33306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql
进入mysql容器 docker exec -it one_mysql /bin/bash
登录mysql mysql -u root -p
备份与迁移
使用命令将容器保存为镜像 docker commit 容器名 新的镜像名
镜像备份 docker save -o mynginx.tar mynginx (-o输出到的文件 执行后运行ls命令可以看到生成的tar包)
镜像恢复与迁移
docker load -i 备份得到的文件名(*.tar)