1.容器的基本操作:
1-1.基本操作:
启动容器(执行后退出):docker run IMAGE [COMMAND] [ARG...]
IMAGE:使用的镜像
COMMAND:容器启动时执行的命令
交互式启动容器:docker run -i -t IMAGE /bin/bash
-i --interactive = true:为容器始终打开标准输入(default:false)
-t --tty = true:为容器提供一个伪tty终端(default:false)
查看容器:docker ps [-a] [-l]
-a:列出所有容器(all)
-l:列出最新创造的容器(latest)
没有参数就会返回当前正在运行的容器。
查看指定容器:docker inspect [docker_id/docker_name]
自定义容器名字:docker run --name=docker_name -i -t ubuntu /bin/bash
--name=docker_name:在创建容器时指定名字
重新启动已经停止的容器:docker start [-i] docker_name
-i:交互启动容器
删除容器:docker rm docker_name
只能删除已经停止的容器
1-2.守护式容器(长期运行,没有交互式会话):
以守护形式运行容器的方式:
在运行交互式容器(docker run -i -t IMAGE /bin/bash)的时候,通过【Ctrl + P】【Ctrl + Q】的形式退出交互式会话,使容器在后台运行。
注意:通过exit会退出关闭容器
附加到运行中(后台守护式)的容器:docker attach docker_name
启动守护式容器:docker run -d IMAGE [COMMAND] [ARG...] [OPTIONS]
守护式进程运行时使用的选项:
-D:--debug:Debug模式开启
-e:--exec-driver = "native":Docker运行时使用的驱动模式
-g:--graph = "/var/lib/docker":
--icc = true
-l:--log-level = "info"
--label = []
-p:--pidfile = "/var/run/docker.pid"
Docker客户端与服务器端连接时候的选项:
-G:--group = "docker"
-H:--host = []
--tls
--tlscacert = "/home/sven/,docker/ca.pem"
--tlscert = "/home/sven/.docker/cert.pem"
--tlskey = "/home/sven/.docker/key/pem"
--tlsverify
与RemotAPI相关的选项:
--api-enable-cors
与存储相关的选项:
-s:--storage-driver
--selinux-enable
--storage-opt = []
与Registry仓库相关的选项:
--insecure-registry = []
--registry-mirror = []
网络设置相关的选项:
-b:--bridge = "":网桥的配置
--bip = ""
--fixed-cidr = ""
--fixed-cidr0v6 = ""
--dns = []
--dns-search = []
--ip = 0.0.0.0
--ip-forward
--ip-masq
--iptables
--ipv6
--mtu = 0
查看容器内部运行情况:docker logs [-f] [-t] [--tail] docker_name
-f --follows = true:一直跟踪容器的运行情况(default = false)
-t --timestamps = true:在返回日志上添加时间戳(default = false)
--tail:返回结尾多少数量的日志(default = all)
查看守护式容器内的进程:docker top docker_name
在守护式容器内启动新的进程:docker exec [-d] [-i] [-t] docker_name [COMMAND] [ARG...]
停止守护式容器:
docker stop docker_name:发送一个信号让容器自动停止容器
docker kill docker_name:直接停止容器
1-3.在容器中搭建Web服务(Nginx):
注意:网站服务一般通过80端口完成映射
设置容器的端口映射:run [-p] [-P]
-P:--publish-all:为容器的所有端口进行映射(default = false)
-p:为容器的指定端口进行映射
docker run -p 80 -i -t ubuntu /bin/bash:指定docker容器端口
docker run -p 8080:80 -i -t ubuntu /bin/bash:同时指定宿主机端口与docker容器端口
docker run -p 0.0.0.0:8080:80 -i -t ubuntu /bin/bash:同时指定宿主机IP,端口与docker容器端口
Nginx的部署流程:
创建映射80端口的容器:docker run -p 80 --name web -i -t ubuntu /bin/bash
安装Nginx:apt-get install -y nginx
安装vim:apt-get install -y vim
创建静态网页:
修改Nginx的配置文件:/etc/nginx/sites-enable/default(修改root的指定路径)
运行Nginx:nginx
验证网站访问