docker入门使用命令

作者:matrix 发布时间:2022 年 6 月 30 日 分类:Linux

目前docker在开发和生产环境中经常使用。就算不是RD,你在github中总会看到他的身影。很多程序的demo版本都有提供docker镜像,用起来真的很爽。完全看作轻量级别虚拟机。

详细教程最好是自己网上多寻,这里整理下自己经常用到的命令。

下载镜像

# 搜索线上就像
docker search centos 

# 下载到本地
docker pull centos 

创建容器

容器是基于镜像创建的

可以根据镜像运行一次性的容器,运行完成后会停止运行,不会被销毁

# 运行容器 如果没有则创建
docker run centos

# 创建同时运行 uname -a命令
docker run centos  uname -a

# 设定容器名称
docker run  --name haha centos

#创建后台运行的容器
docker run --name test --detach/-d centos ping baidu.com

# 创建ssh可交互的容器
docker run --interactive/-i --tty/-t --name ssh centos

docker run -it --name ssh centos

# 创建一次性容器 执行目录挂载。退出之后自行销毁
docker run  -it --rm  -v ~/localData/讯康/HealthExam_Standard/wwwroot/manager/web:/data/web yha8897/nodejs-demo /bin/bash


# vue一键打包docker
#命令没有bash,命令完成后docker会自行退出,里面的分号;也可以换成&&
docker run  -it --rm  -v ~/localData/讯康/HealthExam_Standard/wwwroot/manager/web:/data yha8897/nodejs-demo sh -c 'cd /data;npm run build'

说明:
--interactive 可交互
--tty 输出到终端
--detach 后台驻留

查看正在运行的容器


docker ps # 查看所有容器 docker ps -a/--all

查看容器日志

 docker logs [容器name 或者 ID] 

 # 显示容器输出 类似tail -f
 docker logs --follow  [容器name 或者 ID]
 docker logs -f  [容器name 或者 ID]
 docker logs -t -f --tail=100 [容器name 或者 ID] 

容器ID可以缩写 比如只写前面几个字符。

查看容器启动的进程信息

# 查看容器db1ce9d2a3d0启动的进程信息 

$ docker container top db1ce9d2a3d0

停止/重启/删除容器

# 停止
docker stop haha

# 重启
docker restart haha

# 删除
docker rm [容器name 或者 ID] 

使用临时容器


docker run --rm -it --name mysql_demo -v ~/Desktop/master-bin.000040:/tmp/master-bin.000040 -p 3308:3308 -e MYSQL_ALLOW_EMPTY_PASSWORD=true mysql:5.7 /bin/bash

清理容器

清理已经不使用(包含退出状态)的所有容器

$ docker system prune -f 

清理镜像

清理已经不使用的所有镜像

$ docker image prune -a