Docker構建鏡像並上傳Docker Hub

Docker構建鏡像並上傳Docker Hub

使用DaoCloud加速下載docker鏡像

  • 註冊DaoCloud註冊
  • 在更多->加速器中使用命令,會自動幫你建立/etc/docker/daemon.json文件
  • 重啓docker服務html

    sudo service docker restart
  • 踩坑:若是在centos7中docker服務重啓失敗,建議打開/etc/docker/daemon.json文件,修改成以下形式nginx

    {
        "registry-mirrors": [
            "加速地址"
        ],
        "insecure-registries": []
    }
  • 此方法使用於Docker 版本在 1.12 或更高

構建鏡像

兩種方法:commit,build Dockerfileweb

準備工做

  • 註冊Docker Hub註冊
  • 登陸docker

    sudo docker login

    clipboard.png

方法一:docker commit

  • 啓動容器json

    sudo docker run -it -p 80 --name commit_test ubuntu bash
  • 安裝必要工具ubuntu

    apt-get update
      apt-get install -y nginx
  • docker commitvim

    sudo docker commit -a 'awebone' -m 'ubuntu_nginx' commit_test docker.io/awebone/ubuntu_nginx
  • docker 本地測試centos

    sudo docker run -d --name nginx_web1 -p 32769:80 docker.io/awebone/ubuntu_nginx nginx -g "daemon off;"
      
      sudo docker ps -a
      
      curl http://127.0.0.1:32769

    出現?這個說明成功了?
    clipboard.pngbash

  • docker pushcurl

    sudo docker push awebone/ubuntu_nginx

    clipboard.png

方法二:build Dockerfile

  • 本地建立文件

    mkdir -p dockerfile/df_test
      
      cd dockerfile/df_test/
      
      vim Dockerfile
  • 編輯Dockerfile文件

    # First dockerfile for test
      FROM ubuntu:14.04
      MAINTAINER awebone "610958401@qq.com"
      RUN apt-get update
      RUN apt-get install -y nginx
      COPY index.html /usr/share/nginx/html/
      EXPOSE 80
      ENTRYPOINT ["/usr/sbin/nginx","-g","daemon off;"]
  • 構建

    sudo docker build -t='awebone/df_test' .

    每步都會產生一個id,是中間層鏡像,注意命令最後一個點是指對當前文件夾
    clipboard.png

  • docker 本地測試

    sudo docker run -d --name nginx_web2 -p 32770:80 docker.io/awebone/df_test nginx -g "daemon off;"
      
      sudo docker ps -a
      
      curl http://127.0.0.1:32770
  • docker push

    sudo docker push awebone/df_test
相關文章
相關標籤/搜索