docker
docker的主要命令
命令 | 解释 | 备注 |
---|---|---|
yum install docker | 安装docker | |
service docker start | 启动docker | |
systemctl enable docker | 开机启动docker | |
docker version | 查看docker版本 | |
docker search tutorial | 搜索可用docker镜像 | 好像需要翻墙 |
docker images | 获取宿主机的docker镜像 | |
docker image rm | 删除本地镜像 | docker image rm [选项] <镜像1> [<镜像2> …] |
docker image ls -f dangling=true | 清除虚悬镜像的命令 | 由于版本更迭造成低版本镜像有为<none> 的情况 |
docker pull | 从docker仓库拉取镜像 | docker pull [选项] [Docker Registry 地址[:端口号]/]仓库名[:标签] |
docker ps | 获取docker容器列表 | |
docker commit 698 learn/ping | 保存对容器的修改 | 698 代表容器前3位id,后面是容器名称 |
docker inspect xx | 查看某一容器详细信息 | xx 代表容器名称 |
docker system df | 查看镜像、容器、数据卷所占用的空间。 | |
docker run | 运行容器 | |
docker exec -it xx /path | 进入容器内部 | xx代表镜像名称 /path 代表容器路径 |
docker logs -f –tail 500 xx | 查看某容器前500行日志 | xx 代表容器名称 |
docker cp /etc/localtime xx:/etc/ | 修改docker 容器时间与linux宿主时间一致 | xx代表具体的容器id |
docker run -p 8086:8086 -it cloud_websocket /bin/bash | 创建docker容器 | 8086:8086 代表容器内部端口:对外端口 此操作需要Dockerfile |
docker run –name=grid-auto-dispatch-task -p 9065:9065 -idt -v /servers/docker-jar/grid-auto-dispatch-task:/usr/Downloads bolingcavalry/springbootrun:0.0.2 | 根据image创建并运行容器 -p:宿主机端口与容器端口映射 -v:将宿主机文件映射到容器中,做共享文件夹 –name:容器名称 | |
sudo yum remove docker docker-common docker-selinux docker-engine | 卸载docker组件 |
docker run
-it:这是两个参数,一个是 -i:交互式操作,一个是 -t 终端。我们这里打算进入 bash 执行一些命令并查看返回结果,因此我们需要交互式终端。
–rm:这个参数是说容器退出后随之将其删除。默认情况下,为了排障需求,退出的容器并不会立即删除,除非手动 docker rm。我们这里只是随便执行个命令,看看结果,不需要排障和保留结果,因此使用 –rm 可以避免浪费空间。
bash:放在镜像名后的是命令,这里我们希望有个交互式 Shell,因此用的是 bash。
DockerFile 定制镜像
Dockerfile 是一个文本文件,其内包含了一条条的指令(Instruction),每一条指令构建一层,因此每一条指令的内容,就是描述该层应当如何构建。
- 通过
docker build
根据Dockerfile 创建容器
Dockerfile 指令详解
指令 | 作用 | 备注 |
---|---|---|
FROM | 功能为指定基础镜像,并且必须是第一条指令。 | 如果不以任何镜像为基础,那么写法为:FROM scratch |
RUN | 功能为运行指定的命令 | RUN ... |
CMD | 功能为容器启动时要运行的命令 | RUN是构件容器时就运行的命令以及提交运行结果,CMD是容器启动时执行的命令,在构件时并不运行,构件时紧紧指定了这个命令到底是个什么样子 |
COPY | 一个复制命令,把文件复制到景象中 | |
ADD | 一个复制命令,与copy的区别是ADD 可以复制远程文件 |
ADD <src>... <dest> src 代表要复制的路径,dest代表目标路径 |
ENV | 设置环境变量 | ENV <key> <value> |
VOLUME | 可实现挂载功能,可以将本地文件夹或者其他容器中的文件夹挂在到这个容器中 | VOLUME /var/log /var/db |
关于 docker-compose
docker-compose -f docker-compose.yml up -d
docker-compose 启动目录下
docker-compose.yml
的容器docker-compose down
docker-compose 停止目录下
docker-compose.yml
的容器
docker 对镜像的导入导出
docker save -o prometheus.tar prom/prometheus:latest
这条命令会在当前目录生成 prometheus.tar 文件
docker load -i nginx.tar
加载nginx.tar 文件为镜像文件
部署
Redis & Redis 集群
docker-compose create
docker-compose up -d
mysql & mysql 集群
本文采用CC-BY-SA-3.0协议,转载请注明出处
Author: dadonggua
Author: dadonggua