1.设置端口映射
run [-P][-p]
大写的 P 是Docker 会随机映射一个 49000~49900 的端口到内部容器开放的网络端口
1.1映射所有接口地址
使用 hostPort:containerPort 格式本地的 5000 端口映射到容器的 5000 端口,可以执行
$ sudo docker run -d -p 5000:5000 training/webapp python app.py
此时默认会绑定本地所有接口上的所有地址。
1.2映射到指定地址的指定端口
可以使用 ip:hostPort:containerPort 格式指定映射使用一个特定地址,比如 localhost 地址 127.0.0.1
$ sudo docker run -d -p 127.0.0.1:5000:5000 training/webapp python app.py
1.3映射到指定地址的任意端口
使用 ip::containerPort 绑定 localhost 的任意端口到容器的 5000 端口,本地主机会自动分配一个端口。
$ sudo docker run -d -p 127.0.0.1::5000 training/webapp python app.py
1.4查看映射端口配置
使用 docker port 来查看当前映射的端口配置,也可以查看到绑定的地址
$ docker port nostalgic_morse 5000
127.0.0.1:49155.
2. 创建 web 容器
docker run -p 80 --name web -i -t ubuntu /bin/bash
3. 安装 nginx
apt-get install -y nginx
查找已经安装好的 nginx
whereis nainx
进入配置文件 default.conf
重修修改自己的网站静态目录
修改端口号,为容器创建时映射出去的端口号
4.创建静态页面
5.启动nginx并且访问静态页面
输入 nginx 启动,ps -ef 在容器内部查看进程,发现进程已经启动
在容器外也可以输入命令查看容器里面的进程情况(容器名字在创建的时候写错了)
也可以在 控制台输入 curl http://127.0.0.1:8888 访问
浏览器访问
6. 重启后
在关闭容器之后
重启还需要再次开启 nginx
采用 exec 加入
docker exec 容器名字 服务