Docker安装及简单操作 (3)

但这个并不是完全一样的

# 进入容器测试 [root@docker01 ~]# docker exec -it 993bdabc1f /bin/bash root@993bdabc1f68:/# root@993bdabc1f68:/usr/share/nginx# cd /usr/share/nginx/html/ root@993bdabc1f68:/usr/share/nginx/html# ls 50x.html index.html root@993bdabc1f68:/usr/share/nginx/html# echo 10.0.0.13 > index.html

Docker安装及简单操作

3)-p ip::containerPort(随机端口)

[root@docker01 ~]# docker run -d -p 10.0.0.23::80 nginx:latest 942d13e0e7b3746bdae8e9c6e0004ea599e3cf23207e27b01e1251dacad6b97c [root@docker01 ~]# docker ps -a -l CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 942d13e0e7b3 nginx:latest "nginx -g \'daemon of…" 21 seconds ago Up 20 seconds 10.0.0.23:4000->80/tcp silly_fermat

Docker安装及简单操作

4) -p hostPort:containerPort/udp [udp协议]

[root@docker01 ~]# iptables -t nat -L -n DNAT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 to:172.17.0.2:80 DNAT tcp -- 0.0.0.0/0 10.0.0.5 tcp dpt:8080 to:172.17.0.3:80 DNAT tcp -- 0.0.0.0/0 10.0.0.23 tcp dpt:8080 to:172.17.0.4:80 DNAT tcp -- 0.0.0.0/0 10.0.0.23 tcp dpt:4000 to:172.17.0.5:80 [root@docker01 ~]# docker run -d -p 10.0.0.23::80/udp nginx:latest 6e4f221506d4590debadd39413e2662c96afeecc6daf30150297a89e4be7e0ed [root@docker01 ~]# iptables -t nat -L -n DNAT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 to:172.17.0.2:80 DNAT tcp -- 0.0.0.0/0 10.0.0.5 tcp dpt:8080 to:172.17.0.3:80 DNAT tcp -- 0.0.0.0/0 10.0.0.23 tcp dpt:8080 to:172.17.0.4:80 DNAT tcp -- 0.0.0.0/0 10.0.0.23 tcp dpt:4000 to:172.17.0.5:80 DNAT udp -- 0.0.0.0/0 10.0.0.23 udp dpt:4000 to:172.17.0.6:80

5) -p 81:80 –p 443:443

6) docker run -P (随机端口)

Docker安装及简单操作

7)多容器不同端口映射

访问 8080 端口,展示 xiaoniao
访问 8090 端口,展示游戏集合页面

# 1.编辑配置文件 cat >/data/game.conf<<EOF server { listen 8080; server_name localhost; location / { root /opt/game/; index index.html index.htm; } } server { listen 8090; server_name localhost; location / { root /opt/xiaoniao/; index index.html index.htm; } } EOF # 2.上传代码目录 [root@docker01 /data]# ll 总用量 18896 drwxr-xr-x 5 root root 73 9 月 7 23:03 game -rw-r--r-- 1 root root 309 9 月 7 22:57 game.conf -rw-r--r-- 1 root root 19248295 8 月 28 09:48 html5.zip drwxr-xr-x 3 root root 92 9 月 7 22:15 xiaoniao -rw-r--r-- 1 root root 91014 9 月 7 22:11 xiaoniaofeifei.zip # 3.创建容器并挂载 docker run -d -p 8080:8080 -p 8090:8090 -v /data/game.conf:/etc/nginx/conf.d/game.conf -v /data/game:/opt/game -v /data/xiaoniao:/opt/xiaoniao nginx:latest # 4.访问测试 10.0.0.5:8080 10.0.0.5:8090 七、docker的数据卷管理 1.目录挂载 # 拖个之前玩过的包 解压出html页面 [root@docker01 ~]# cd /opt [root@docker01 /opt]# mkdir xiaoniao [root@docker01 /opt]# cd xiaoniao/ [root@docker01 /opt/xiaoniao]# rz -E rz waiting to receive. [root@docker01 /opt/xiaoniao]# unzip xiaoniaofeifei.zip [root@docker01 /opt/xiaoniao]# ls 2000.png 21.js icon.png img index.html sound1.mp3 xiaoniaofeifei.zip [root@docker01 ~]# docker run -d -p 80:80 -v /opt/xiaoniao:/usr/share/nginx/html nginx:latest 指定端口 指定目录 指定镜像 /usr/share/nginx/html # 容器页面目录 定好的

Docker安装及简单操作

修改文件什么的不需要进入容器 直接在外面改就行

2.卷挂载

(第一次卷是空,会把容器的数据复制到卷中,如果卷里面有数据,把卷数据的反挂载到容器中)

[root@docker01 ~]# docker volume create inspect ls prune rm [root@docker01 ~]# docker volume ls [啥也没有] DRIVER VOLUME NAME # 创建一个叫xiaoniao的卷 [root@docker01 ~]# docker run -d -p 81:80 -v xiaoniao:/usr/share/nginx/html nginx:latest ee562aefdfcd503e70332b4677dc0728398e4e101b8f57b671bcf2498b1083e0 [root@docker01 ~]# docker volume ls DRIVER VOLUME NAME local xiaoniao

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zggxjx.html