docker笔记
1 下载镜像
1.1 设置镜像国内下载源
vim /etc/docker/daemon.json
添加:
{
"registry-mirrors": ["https://hub-mirror.c.163.com/"]
}
1.2 查看可以下载的版本
下载指定版本,否则默认下载lasted版本
docker search nginx
docker pull nginx:1.18.0
2 创建容器
2.1 别名--name
create --name nginx nginx:1.18.0
2.2 挂载外部文件夹-v(--volume)
-v /home/docker-nginx/html:/usr/share/nginx/html
-v /home/docker-nginx/conf/:/etc/nginx/conf
2.3 指定网络端口-p
外部端口8080,对应容器内80端口
-p 8080:80
2.4 后台启动-d
docker run -d --name nginx -v /home/docker-nginx/html:/usr/share/nginx/html -v /home/docker-nginx/conf/:/etc/nginx/conf -p 8080:80 nginx:1.18.0
3 操作容器
3.1 容器内部
docker exec -it /bin/bash
3.2 启动,停止,重新启动
docker start nginx
docker stop nginx
docker restart nginx
3.3 查看容器
查看运行中容器:
docker ps
查看所有容器:
docker ps -a
3.4 删除容器,镜像
容器先停止后删除,强制删除添加-f
删除镜像:
docker rmi imageId
删除容器:
docker rmi containerId(name)
3.5 复制文件
从容器中复制到宿主机
docker cp nginx:/etc/nginx/conf/nginx.conf /home/docker-nginx/conf
从宿主机复制到容器
docker cp /home/docker-nginx/conf/nginx.conf nginx:/etc/nginx/conf
4 网络问题
4.1重启网络服务
systemctl restart network && systemctl restart docker
5 容器迁移
5.1容器打包
docker save webapp:1.0 > webapp-1.0.tar
docker save -o ./webapp-1.0.tar webapp:1.0
批量导出
docker save -o ./images.tar webapp:1.0 nginx:1.12 mysql:5.7
5.2容器导入
sudo docker load < webapp-1.0.tar
sudo docker load -i webapp-1.0.tar