docker 运行nginx并进入容器内部、端口映射


一、docker运行容器

1、从网易蜂巢镜像仓库下载nginx镜像 ;

2、拉取镜像到本地,并查看本地的镜像:

$ docker pull hub.c.163.com/library/node:latest
$ docker images

3、运行容器

命令格式:

docker run [option] IMAGE [COMMOND] [ARG...]

例如:

docker run -d --name nginx1.0 hub.c.163.com/library/nginx    # -d: 后台启动容器; --name:容器的别名,默认为随机的

容器的操作:
复制代码

docker ps         # 查看正在运行的容器
docker ps -a      # 查看所有容器
docker ps -l      # 查看最近一次运行的容器

docker create 容器名或者容器ID    # 创建容器
docker start [-i] 容器名        # 启动容器
docker run 容器名或者容器ID       # 运行容器,相当于docker create + docker start
docker attach 容器名或者容器ID bash     # 进入容器的命令行(退出容器后容器会停止)
docker exec -it 容器名或者容器ID bash   # 进入容器的命令行
docker stop 容器名                    # 停止容器
docker rm 容器名                      # 删除容器

docker top 容器名                    # 查看WEB应用程序容器的进程
docker inspect 容器名                # 查看Docker的底层信息

复制代码

4、进入容器内部:

$ docker exec -it nginx1.0 bash

 
 二、docker 网络

linux使用namespace来进行资源的隔离 ,docker的隔离性;

1、docker的网路类型分为:

Bridge模式:桥接(默认的模式)

host模式:容器将不会获得独立的network namespace,将和主机公用一个;即在docker中使用网络和主机上一样的;

None:不与外界任何东西进行通讯

2、采用Bridge的时候需要和主机通讯,就需要使用端口映射;

 

3、端口映射

$ docker run -d --name nginx1.1 -p 8080:80 hub.c.163.com/library/nginx  # 主机的8080端口映射到容器中的80端口


原文地址:https://www.cnblogs.com/lcword/p/14380893.html