## docker常用命令
### docker基础信息命令
~~~
显示docker版本信息:docker version
显示docker系统信息:docker info
帮助命令:docker 命令 --help
~~~
### 常用镜像命令
~~~
查看本地所有镜像:docker images
搜索镜像:docker search 镜像
拉取镜像:docker pull 镜像:tag[可选,不写默认latest]
删除指定镜像:docker rmi -f 镜像名/镜像id
删除多个镜像:docker rmi -f 镜像id 镜像id 镜像id
删除全部镜像:docker rmi -f $(docker images -aq)
删除所有tag为none的镜像:docker rmi $(docker images -q -f dangling=true)
~~~
### 常用容器命令
~~~
新建容器启动:docker run [可选参数] image
--name="Name" 容器名字,用来区分
-d 后台方式运行
-it 使用交互方式,进入容器查看内容
-p 指定容器端口,可做端口映射
-p ip:主机端口:容器端口
-p 主机端口:容器端口
-p 容器端口
-P 随机指定端口
-e a=b 环境变量
从容器中退回主机(退出容器,容器停止):exit
从容器中退回主机(退出容器,容器不停止):Ctrl+P+Q
查看当前运行容器:docker ps
-a 列出所有运行过的容器
-n=1 列出最近运行过的n个容器
-q 只显示容器编号
删除容器
删除指定容器:docker rm 容器ID
删除所有停止的容器:docker rm $(docker ps -qf status=exited)
删除全部容器:docker rm -f $(docker ps -aq)
启动和停止容器
启动容器:docker start 容器id
重启容器:docker restart 容器id
停止容器:docker stop 容器id
杀死容器:docker kill 容器id
~~~
### 其他常用命令
~~~
后台启动容器:docker run -d 镜像名
Q:docker ps发现启动的容器停止了
A:docker容器使用后台运行,就必须要有一个前台进程,docker发现没有应用,就会自动停止
查看日志:docker logs -tf --tail 10 容器id
启动容器同时执行脚本:docker run -d centos /bin/bash -c "while true;do echo aaa;sleep 1;done"
查看容器中的进程信息:docker top 容器id
查看镜像元数据:docker inspect 容器id
进入当前正在运行的容器
方式一(进入容器后开启一个新的终端):docker exec -it 容器id bashShell
方式二(进入容器正在执行当前的终端):docker attach 容器id
从容器内拷贝文件到主机上:docker cp 容器id:容器内路径 目的主机路径
用完即删(docker ps -a找不到):docker run -it --rm tomcat:9.0
查看docker的cpu状态:docker stats
图形化界面工具:docker run -d -p 8088:9000 --restart=always -v /var/run/docker.sock:/var/run/docker.sock --privileged=true portainer/portainer
~~~
### commit镜像
~~~
docker commit 提交容器成为一个新的镜像副本
docker commit -m="描述信息" -a="作者" 容器id 镜像名:tag
ps:commit完成后docker images本地就会有新的镜像
~~~
### 镜像发布到dockerhub
~~~
登录:docker login (网址,可省略,默认dockerhub)
推送:docker push dockerhub账号名/镜像名:tag
~~~
### 镜像发布到阿里云
1. 登录阿里云
2. 找到容器镜像服务
3. 创建命名空间
4. 创建容器镜像
![](https://img.kancloud.cn/86/a5/86a595eb060b67e2347c248172cd5063_1020x636.png)
- Python学习
- Python基础
- Python初识
- 列表生成式,生成器,可迭代对象,迭代器详解
- Python面向对象
- Python中的单例模式
- Python变量作用域、LEGB、闭包
- Python异常处理
- Python操作正则
- Python中的赋值与深浅拷贝
- Python自定义CLI三方库
- Python并发编程
- Python之进程
- Python之线程
- Python之协程
- Python并发编程与IO模型
- Python网络编程
- Python之socket网络编程
- Django学习
- 反向解析
- Cookie和Session操作
- 文件上传
- 缓存的配置和使用
- 信号
- FBV&&CBV&&中间件
- Django补充
- 用户认证
- 分页
- 自定义搜索组件
- Celery
- 搭建sentry平台监控
- DRF学习
- drf概述
- Flask学习
- 项目拆分
- 三方模块使用
- 爬虫学习
- Http和Https区别
- 请求相关库
- 解析相关库
- 常见面试题
- 面试题
- 面试题解析
- 网络原理
- 计算机网络知识简单介绍
- 详解TCP三次握手、四次挥手及11种状态
- 消息队列和数据库
- 消息队列之RabbitMQ
- 数据库之Redis
- 数据库之初识MySQL
- 数据库之MySQL进阶
- 数据库之MySQL补充
- 数据库之Python操作MySQL
- Kafka常用命令
- Linux学习
- Linux基础命令
- Git
- Git介绍
- Git基本配置及理论
- Git常用命令
- Docker
- Docker基本使用
- Docker常用命令
- Docker容器数据卷
- Dockerfile
- Docker网络原理
- docker-compose
- Docker Swarm
- HTML
- CSS
- JS
- VUE