docker常用命令

1、镜像相关

# 查看本地镜像
docker images

# 搜索镜像 docker search [image]
# 下载镜像 docker pull [image]
# 删除镜像 docker rmi [image]

2、容器相关

# docker查看所有运行的容器
docker ps [-a]
# -a -> 查看所有容器,包括未运行的

# 新建并运行容器(容器如果已经存在,则使用 docker start 命令启动) docker run [options] [image] # options 常用启动选项: #
-d -> 后台运行 # -p 宿主IP:容器IP -> 将容器IP映射到宿主IP # -v 宿主file/path:容器file/path -> 将容器的file/path挂载到宿主的file/path # --name [name] -> 为容器命名 # --restart always -> 设置容器随docker一起自动启动 # 删除容器 docker rm [containID/containName] [options] # options 常用选项: # -f -> 强制删除容器
# 启动容器/停止容器/重启容器
docker start/stop/restart
[containID/containName]
# 进入容器
docker exec -it [containID/containName] bashdocker exec -it [containID/containName] /bin/bash
(如果容器是基于alpine 镜像的 最后的 /bin/bash 需要换成 /bin/sh )
# 执行容器的命令 docker exec
-it [containID/containName] [commond] # 示例,执行 redis-test 容器的 redis-cli 命令 docker exec -it redis-test redis-cli -a "123456" # 说明: 这句话执行了 redis-test容器的 redis-cli 命令,-a 命令的作用是输入密码

3、Dockerfile

Dockerfile
----------
FROM
WORKDIR
COPY
RUN
CMD
----------
FROM baseImage:
基于基本的镜像,必填

WORKDIR /the/workdir/path:
用作工作目录的绝对或相对路径。将在不存在的情况下创建。
为下面的任何ADD、COPY、CMD、ENTRYPOINT或RUN指令设置工作目录。

COPY:
拷贝到镜像

RUN:
执行shell脚本,在构建的时候执行

CMD:
执行shell脚本,容器运行时执行

CMD ["java","-Xms512m","-Xmx512m","-XX:MetaspaceSize=256m","-XX:MaxMetaspaceSize=256m","-jar","docker-demo-1.0.1.jar"]

4、扩展

1)查看docker run启动参数命令

安装 runlike

pip install runlike

查看容器启动参数

runlike -p <容器名>|<容器ID>

2)修改容器启动参数

格式:docker update [OPTIONS] [CONTAINER...]

例:

docker update --restart=always eureka-server

3) docker logs 查看容器实时日志

docker logs -f -t --tail=100 [容器]

参数说明:  

  -f:查看实时日志

  -t:查看日志产生的时间

  -tail=100:查看最后的100条日志

  [容器]:容器名称

4)docker容器 和 主机之间进行文件拷贝

 - 从 主机 拷贝到 docker 容器:

docker cp [主机文件] [容器]:[容器路径]

例如:

  docker cp ./test.txt mysql:/opt/

- 从 docker容器 拷贝到 主机:

docker cp [容器]:[容器路径] [主机文件]
原文地址:https://www.cnblogs.com/lkc9/p/11670175.html