docker教程html
docker help
:查看帮助信息
docker run —help
:能够查看某条命令的具体用法docker info
:查看docker的安装信息
which docker
:查看docker的执行路径docker pull <镜像名:tag>
:从官网拉取镜像docker search <镜像名>
:搜索在线可用镜像名docker images
:查询全部的镜像,默认是最近建立的排在最上docker rmi <镜像名:tag>
:删除镜像docker rmi $(docker images -q -f dangling=true)
:批量删除无用镜像前端
效果node
docker ps
:查看全部运行中容器docker ps -a
:查看全部容器docker ps -l
: 查看最后启动的容器的信息
docker top {容器ID|容器名称}
:显示容器内运行的进程docker run <镜像名1> <镜像名2> <镜像名3>
:同时运行几个docker run <镜像名> apt-get install -y ping
:在容器中安装新程序
docker run -it ubuntu /bin/bash
:运行一个可交互的容器
docker run -e <名称>=<参数> node
:设置容器环境docker run -d ubuntu:14.04 /bin/sh -c "while true; do echo hello world; sleep 1; done
:执行后台任务docker run --name web training/webapp
:为容器起名字docker run —rm <镜像名>
用完就删除,不能与-d一块儿使用docker exec -it sso-server-dev /bin/bash
:docker启动后执行一些命令操做docker run —restart always node
:挂了重启docker tag {容器ID|容器名称} <镜像名:tag>
:给镜像加tagdocker stop {容器ID|容器名称}
:中止容器docker start {容器ID|容器名称}
:启动容器docker cp 7bb0e258aefe:/etc/debian_version .
:从container中拷贝文件,当container已经关闭后,在里面的文件还能够拷贝出来。把容器中的/etc/debian_version拷贝到当前目录下。docker inspect {容器ID|容器名称}
:docker容器的配置和状态信息docker inspect -f '{{ .NetworkSettings.IPAddress }}' {容器ID|容器名称}
:过滤信息docker logs {容器ID|容器名称}
:查询某个容器的全部操做记录,标准输出流docker logs -f {容器ID|容器名称}
: 实时查看容易的操做记录docker run -P <镜像名>
docker run -p <主机端口号>:<容器端口号> mongo
:
docker run -p 127.0.0.1:5001:5002 mongo
:指定绑定的网络地址docker run -p 80:5000 training/webapp python app.py
:指定主机和容器端口号docker run -d -p 127.0.0.1:5000:5000/udp training/webapp python app.py
:绑定udp端口docker port mongo 5000
:查询容器内的端口号映射到哪一个本地地址,127.0.0.1:49155docker port -p 1111:1111 -p 2222:2222 -p 3333:3333 mongo
: -p可使用屡次docker run -d -P --name web --link <容器名称>:<别名> <镜像名>
// 实例 sudo docker run -d --name mongo mongo sudo docker run -d -P --name web --link mongo:db node $ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 349169744e49 training/postgres:latest su postgres -c '/usr About a minute ago Up About a minute 5432/tcp db aed84ee21bde training/webapp:latest python app.py 16 hours ago Up 2 minutes 0.0.0.0:49154->5000/tcp db/web,web 咱们链接容器作什么?咱们发现链接的两个容器是父子关系。这里的父容器是db能够访问子容器web。为此docker在容器之间打开一个安全链接隧道不须要暴露任何端口在容器外部。 你会注意到当你启动db容器的时候咱们没有使用-P或者-p标识。咱们链接容器的时候咱们不须要经过网络给PostgreSQL数据库开放端口。
数据卷python
docker run -d -P --name web -v /src/webapp:/opt/webapp training/webapp python app.py
docker run --name jupiter-install -v $(pwd):/home -w /home --rm node_tools npm install
数据卷容器nginx
docker pull node
:从官网下载node镜像docker build -t node-pomelo ./
:经过Dockerfile建立镜像docker build -t node-pomelo -f Dockerfile.pomelo.env ./
:经过配置文件指定Dockerfile文件docker commit <容器id> <新镜像名称>
docker commit -m="注释信息" -a="user信息" node:v2
docker history node:v2
:查看镜像提交历史
2.10.4.1.1. 术语介绍git
2.10.4.1.2. 父镜像web
2.10.4.1.3. 基础镜像redis
2.10.4.1.4. 镜像IDmongodb
docker save debian02 > /root/debian02.tar:debian02
:镜像打成压缩包docker load < debian02.tar
:在另外的机器上导入镜像docker images
:查看存在的镜像docker hub的自动化构建docker
sudo service docker restart
sudo service docker stop
systemctl enable docker
docker run -i -t node /etc/rc.local
sudo nohup docker-compose up