代码之家  ›  专栏  ›  技术社区  ›  PPShein

从Docker Hub拉出nginx后集装箱不工作

  •  -1
  • PPShein  · 技术社区  · 6 年前

    我想拉 nginx 来自Docker Hub的图像,并在本地运行,如下所示 Ansible 故事板。

    - hosts: local
      connection: local
      vars:
        docker_info:
          registry: registry.hub.docker.com
          email: my@gmail.com
          username: myusername
          password: mypassword
      tasks:
        - name: log into docker hub registry
          docker_login:
            registry: "{{ docker_info.registry }}"
            email: "{{ docker_info.email }}"
            username: "{{ docker_info.username }}"
            password: "{{ docker_info.password }}"
        - name: Pull a container image
          docker_container:
            name: myngnix
            image: nginx
            pull: yes
            state: started
    

    Ansible输出如下,显示其工作正常:

    PLAY [local] *********************************************
    
    TASK [Gathering Facts] ***********************************
    ok: [127.0.0.1]
    
    TASK [log into docker hub registry] **********************
    ok: [127.0.0.1]
    
    TASK [Pull a container image] ****************************
    changed: [127.0.0.1]
    
    PLAY RECAP ***********************************************
    127.0.0.1                  : ok=3    changed=1    unreachable=0    failed=0    skipped=0 
    

    之后,我浏览了 http://localhost http://localhost:8080 ,它不起作用。但当我检查控制台中的容器是否正在运行时,它显示它正在运行。

    CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS               NAMES
    22f16edfd1e8        nginx               "nginx -g 'daemon of…"   9 minutes ago       Up 9 minutes        80/tcp              myngnix
    

    请告诉我为什么它不起作用。非常感谢。

    1 回复  |  直到 6 年前
        1
  •  2
  •   johnharris85    6 年前

    您没有发布端口 8080 在你的主人的任何地方。试试这个:

    ...
    - name: Pull a container image
      docker_container:
        name: myngnix
        image: nginx
        pull: yes
        state: started
        published_ports:
          - 8080:80