docker 常用命令
docker ps
查看当前运行中的容器docker images
查看镜像列表docker rm container-id
删除指定 id 的容器docker stop/start container-id
停止/启动指定 id 的容器docker rmi image-id
删除指定 id 的镜像docker volume ls
查看 volume 列表docker network ls
查看网络列表
docker run -d -p 6379:6379 --name redis redis:latest 下载镜像,创建容器并运行
docker exec -it cdda31f69770 /bin/sh 进入容器内部
几种挂载方式
bind mount
直接把宿主机目录映射到容器内,适合挂代码目录和配置文件。可挂到多个容器上volume
由容器创建和管理,创建在宿主机,所以删除容器不会丢失,官方推荐,更高效,Linux 文件系统,适合存储数据库数据。可挂到多个容器上tmpfs mount
适合存储临时文件,存宿主机内存中。不可多容器共享。
文档参考:https://docs.docker.com/storage/
bind mount
方式用绝对路径 -v D:/code:/app
volume
方式,只需要一个名字 -v db-data:/app
示例:
docker run -p 8080:8080 --name test-hello -v D:/code:/app -d test:v1 -p 映射容器内端口:宿主机 --name 容器名字 -d 后台运行 命令参考文档:https://docs.docker.com/engine/reference/run/
Build 创建镜像和运行
基于dockerfile创建镜像
编译 docker build -t test:v1 . -t 设置镜像名字和版本号 命令参考:https://docs.docker.com/engine/reference/commandline/build/
基于容器创建镜像
将容器里面运行的程序及运行环境打包生成新的镜像 docker commit [选项] 容器ID/名称 仓库名称:[标签] -m:说明信息 -a:作者信息 -p:生成过程中停止容器的运行 docker commit -m 新的镜像copy -a me cdda31f69770 docker.ui:v1
查看镜像提交历史
docker history docker.ui:v1
运行镜像,创建容器并运行
运行 docker run -p 8080:8080 --name test-hello test:v1 -p 映射容器内端口到宿主机 --name 容器名字 -d 后台运行 命令参考文档:https://docs.docker.com/engine/reference/run/
编写 Dockerfile
FROM node:11 MAINTAINER easydoc.net # 复制代码 ADD . /app # 设置容器启动后的默认运行目录 WORKDIR /app # 运行命令,安装依赖 # RUN 命令可以有多个,但是可以用 && 连接多个命令来减少层级。 # 例如 RUN npm install && cd /app && mkdir logs RUN npm install --registry=https://registry.npm.taobao.org # CMD 指令只能一个,是容器启动后执行的命令,算是程序的入口。 # 如果还需要运行其他命令可以用 && 连接,也可以写成一个shell脚本去执行。 # 例如 CMD cd /app && ./start.sh CMD node app.js
标签:容器,--,app,常用命令,镜像,docker,运行 From: https://www.cnblogs.com/bestzhang/p/17350520.html