前言
因为安装nginx和node.js相对比较简单,就直接写在一篇文章里了
1、打开cmd,拉取镜像
docker pull nginx
docker pull node
2、查看镜像
docker images
3、启动容器
启动nginx容器,设置固定IP
# windows container
docker run --name nginx --network mynet --ip 172.18.69.13 -d nginx
# 或者端口映射
docker run -itd --name nginx --network mynet --ip 172.18.69.13 -p 8080:80 nginx
# linux container(不用指定ip)
docker run -itd --name nginx -p 8080:80 nginx
语法说明
将宿主机的8080端口映射到容器的80端口(如果端口被占用,请更换端口)
docker run -itd --name [容器名称] --network [自定义网络模式] --ip [指定的固定IP地址] -p [宿主机端口]:[容器端口] [镜像名称/id]
启动node容器,设置固定IP
# windows container
docker run -itd --name ndoe --network mynet --ip 172.18.175.23 node
# linux container(不用指定ip)
docker run -itd --name ndoe node
语法说明
docker run -itd --name [容器名称] --network [自定义网络模式] --ip [指定的固定IP地址] [镜像名称/id]
4、执行脚本
(1)node容器
docker exec -it node bash
语法说明
docker exec -it [容器名称/id] bash
然后执行
node -v
(2)nginx容器
docker exec -it nginx bash
然后执行
nginx -v
查看nginx容器ip
docker inspect nginx
语法说明
docker inspect [容器名称/id]
- "NetworkSettings"对象下的"Networks"对象下的"IPAddress"属性就是容器的ip
注意:"Gateway"的IP是虚拟机的ip
(1)如果是windows container,则在宿主机浏览器输入容器ip(和宿主机端口,我没指定端口映射,所以默认映射的是80端口就不用输入了),
(2)如果是linux container,则输入宿主机ip和映射的宿主机端口,因为其默认网络是bridge
如图则成功
补充
由于忘了将容器设置为自动重启(开机自启)了,所以在这update容器
docker update --restart=always node
docker update --restart=always nginx
语法说明
docker update --restart=always [容器名称/id]