docker images
镜像列表docker ps
服务列表
docker 隐藏打包文件.dockerignore
.git
node_modules
npm-debug.log
Dockerfile
FROM node:10.16.0-alpine
WORKDIR /app
RUN npm install --registry=https://registry.npm.taobao.org
EXPOSE 80
ENTRYPOINT [ "npm", "run", "start" ]
打包当前目录
docker image build -t node-app .
生成容器 docker container run
docker container run -p 114:8080 -it --name containerName -v /www/wwwroot/node.test.com:/app -d --privileged=true --restart=always node-app
--privileged
开启root
特权--restart=always
自动重启 如果创建是没有使用 可以更新容器配置 命令: docker container update --restart=always 容器名字
目录映射
-v /Users/root/webProject/test/App:/app
容器列表 docker container ls
docker ls
停止 / 开始 指定的容器运行
docker start xxx
docker kill xxx
docker stop xxx
docker restart xxxx
docker logs
docker logs containerName -f 查看实时记录
docker exec
docker exec -it < name > sh
docker stop $(docker ps -a -q) 停止所有
docker rm $(docker ps -a -q) 删除所有
容器操作
docker export $container_id > 容器快照名 容器导出
cat centos.tar | docker import - my/centos:v888 容器导入
docker rm [container_id]
docker rm -f [container_id] 删除运行状态下 加 -f 参数
docker load 镜像载入
docker save 镜像载出
docker import
docker export
镜像保存/载入:docker load
/docker save
;将一个镜像导出为文件,再使用docker load命令将文件导入为一个镜像,会保存该镜像的的所有历史记录。比docker export命令导出的文件大,很好理解,因为会保存镜像的所有历史记录。
容器导入/导出:docker import
/docker export
;将一个容器导出为文件,再使用docker import命令将容器导入成为一个新的镜像,但是相比docker save命令,容器文件会丢失所有元数据和历史记录,仅保存容器当时的状态,相当于虚拟机快照。
镜像删除
docker rmi <image id>
想要删除untagged images,也就是那些id为<None>的image的话可以用
docker rmi $(docker images | grep "^<none>" | awk "{print $3}")
要删除全部image的话
docker rmi $(docker images -q)