Docker Linux 端口开放教程

流程图

flowchart TD;
    A(准备Docker镜像)-->B(创建容器);
    B-->C(查看容器ID);
    C-->D(进入容器);
    D-->E(编辑Dockerfile);
    E-->F(保存Dockerfile);
    F-->G(构建镜像);
    G-->H(运行容器);

步骤说明

  1. 准备Docker镜像:首先需要准备一个Docker镜像,可以是官方提供的Linux镜像,也可以是自己编写的镜像。
  2. 创建容器:使用Docker命令创建一个容器,指定要使用的镜像。
  3. 查看容器ID:使用Docker命令查看刚刚创建的容器的ID,以便后续操作。
  4. 进入容器:使用Docker命令进入指定的容器,以便编辑配置文件。
  5. 编辑Dockerfile:在容器中找到相应的配置文件,并进行编辑,以开放指定的端口。
  6. 保存Dockerfile:保存修改后的配置文件,并退出容器。
  7. 构建镜像:使用Docker命令根据修改后的Dockerfile构建新的镜像。
  8. 运行容器:使用Docker命令运行新构建的镜像生成的容器,并指定要开放的端口。

代码示例

  1. 准备Docker镜像:假设我们使用官方提供的Ubuntu镜像。
docker pull ubuntu:latest
  1. 创建容器:
docker create --name my-container ubuntu:latest
  1. 查看容器ID:
docker ps -aqf "name=my-container"
  1. 进入容器:
docker exec -it <container_id> /bin/bash
  1. 编辑Dockerfile:在容器中找到并编辑配置文件。
vi /etc/ssh/sshd_config

在文件中找到以下行:

#Port 22

去掉注释符号,将端口号改为想要开放的端口,例如:

Port 2222
  1. 保存Dockerfile:按下Esc键,输入:wq保存并退出Vi编辑器。

  2. 构建镜像:

docker commit my-container my-image:latest
  1. 运行容器:
docker run -d -p 2222:22 my-image:latest

这将运行新构建的镜像生成的容器,并将容器内部的22端口映射到主机的2222端口。

总结

通过上述步骤,我们可以实现Docker Linux端口的开放。首先准备Docker镜像,然后创建容器并进入容器进行配置文件的编辑,保存修改后的配置文件,并根据Dockerfile构建新的镜像,最后运行新构建的镜像生成的容器即可实现端口开放。这样,我们就可以通过指定的端口访问容器内的服务了。