docker 學習(一) 基礎操做

  1. 基礎    docker run,attach,ps,images,exec
    1. 下載鏡像
      1. docker pull 鏡像名稱
      2. 啓動 docker run -d -p 8080:80
        1. run 鏡像放入容器  
        2. -d 啓動容器後臺
        3. -p 把容器端口映射到主機的8080:80
      3. docker ps 列出剛運行的容器
      4. docker run -d -p 8080:80 registry.cn-hangzhou.aliyuncs.com/lxepoo/apache-php5 
        1. 停掉用docker stop ID
      5. iptables -I INPUT -p tcp --dport 8080 -j ACCEPT 讓防火牆放行8080  php

  2. 鏡像基本操做html

    1. 拉取官方鏡像web

      1. docker pull centosdocker

    2. 運行apache

      1. 交互式操做vim

        1. docker run -i -t --name myos1 centoscentos

          1. -i 與容器交互bash

          2. -t 爲容器建立虛擬終端tcp

          3. - name 重命名ui

        2. 進入了

        3. exit 退出容器

        4. 用 docke ps -a 查看全部

        5. docker start myos1 再次啓動

        6. 進入 

          1. exit仍是會中止

        7.  docker exec  名字  命令

        8. docker exec -i -t 名字 /bin/bash  這樣後臺

    3. dockerfile使用

      1. 建立新的centos

        1. 安裝軟件    

          1. 硬來   進入attach yum夢

          2. 利用dockerfile進去構建

      2. 案例

        1. 安裝apache    在centos中 須要yum -y install httpd   

        2. dockerfile

          1. 建立目錄

            1. 加入

              FROM centos:latest
              RUN yum -y install httpd  
              RUN  systemctl enable httpd.service 
              EXPOSE 80

              FROM 名稱+標籤   

              用原有的鏡像去新建一個鏡像而且安裝httpd Apache  開啓自啓動  暴露80端口
            2. docker build -t centos:httpd .
              1. build文件夾名 -t指定鏡像名稱,httpd是標籤 這個點很重要,表明當前文件夾下的dockerfile (能夠)
            3. 讓容器後臺運行
              1. docker run -i -t -p 8080:80 --name myhttpd centos:httpd 
              2. docker run --privileged -d -p 8080:80 --name myhttpd centos:httpd /usr/sbin/init

                1. --privileged 添加權限 -d後臺運行 -p端口 --name名稱  /usr/sbin/init 容器啓動後執行這個命令

                2. 訪問試一下 8080端口

                3. 運行  docker exec -i -t myhttpd /bin/bash

                  1. 查看當前狀態

                4. 能夠在Dockerfile 加入  CMD /user/sbin/init 

                  1. 直接運行 docker exec -i -t myhttpd /bin/bash

                5. docker logs 容器名稱  查看日誌

              3.  共享代碼

                1. vim etc/httpd/conf/httpd.conf  找到目錄

                2. 掛載

                  1. docker run --privileged -d -p 8080:80 --name myhttpd -v /root/myweb:/var/www/html centos:httpd /usr/sbin/init

                    -v /home/cc/myweb:/var/www/html 本地的掛載到環境目錄

                    1. 倆者編寫的話代碼同步

相關文章
相關標籤/搜索