docker 基础命令使用

创建镜像
docker build -t 镜像名称 .
创建容器
docker create -it --name 容器名称 镜像名称
docker create -it --restart unless-stopped --name centos7-*** base/centos7 tail -f /home/test/test.log
docker create -it --privileged=true --name test3-16 centos7test2 /usr/sbin/init
启动容器
docker start -i 容器名称
创建并启动容器
docker run -i --name 容器名称 镜像名称
docker run -d -i --name 容器名称 镜像名称
docker run -d -i --name 容器名称 镜像名称 脚本阻塞
docker run -d --restart unless-stopped -p 80:80 --name centos7-nginx4 nginx4
停止容器
docker stop 容器名称
进入容器
docker exec -it test7 bash
复制文件
docker cp 本地目录 容器名称:容器目录
查看镜像、容器、数据卷所占用的空间
docker system df
查看运行中的容器状态
docker stats
查看容器配置
docker inspect jenkins
导入导出镜像
# 导出镜像
docker export -o 文件名.tar 容器名称

# 导入镜像
docker import 文件名.tar 容器名称
清理镜像
docker system prune
删除容器
docker rm 容器名称
删除镜像
docker rmi 镜像名称
清理停止容器
docker system prune
修改docker存储目录
# 修改启动服务,/lib/systemb/system/docker.service
ExecStart=/usr/bin/dockerd --graph /home/docker
原路径: /var/lib/docker
修改容器内存
docker update -m 700m --memory-swap -1 jenkins
限制cpu当100%时的相对其它容器的利用率,默认1024
docker update --cpu-shares 512 jenkins
限制指定cpu使用线程
docker update --cpuset-cpus="1" jenkins
docker update --cpuset-cpus="1,3" jenkins
修改容器名
docker rename 旧容器名 新容器名
参考案例
# nginx prod
docker run -m 100M --memory-swap -1  -d --restart unless-stopped -p 80:80 \
-v /home/g40/volume/proj_html:/home/html \
-v /home/g40/volume/nginx/nginx.conf:/etc/nginx/nginx.conf \
-v /home/g40/volume/nginx/conf.d:/etc/nginx/conf.d \
-v /home/g40/volume/nginx/log:/var/log/nginx \
--name nginx qmrz/nginx:1.0.0
# java
docker run -m 600M --memory-swap -1 -d --restart unless-stopped -p 10103:9086 \
--cap-add=ALL \
--cpuset-cpus="1" \
-v /home/website/jar/:/home/jar/ \
--name test-java qmrz/java8:1.0.2 \
java -jar test-exec.war --spring.profiles.active=test
docker | suger 2019-04-04 12:49:39