daocker常用命令
* docker pull busybox //pull busybox鏡像
* docker images //查看有哪些鏡像
* docker search pod-name //搜索某個鏡像
* docker run -d -p 8080:80 nginx //啟動一個監聽8080埠的nginx鏡像,鏡像默認從docker hub上拉取,80是nginx鏡像內部的監聽埠
* docker logs imgID //查看鏡像日志
* docker container //管理容器
* docker inspect images_id //查看鏡像的詳細資訊,包含創建時間/執行的命令等
* docker history images_id //查看鏡像歷史
* docker run -d nginx:1.17 //拉取并且自動運行
* docker pull nginx:1.16 //只做拉取操作
* docker rm nginx:1.17 //移除本地鏡像
* docker info | grep "Docker Root Dir" //查看docker資料存放位置
* docker image rm 9beeba249f3e //洗掉鏡像
* docker exec -it d2b0978092bd bash //通過bash進入容器
docker容器管理
* docker stats //查看容器使用資源
* docker update //更新容器配置
* docker update -m="500M" ede08ef49823 //更新容器配置
* docker cp nginx.tar png:/opt //像容器內拷貝資料,png是容器名字
* docker container prune //洗掉已停止的容器
* 測驗docker和宿主機的連通性
* docker pull busybox
* docker run -it busybox
* 進去docker后ping宿主機地址
Dockerfile指令說明
* FROM //構建新鏡像是基于哪個鏡像
* LABEL //標簽
* RUN //構建鏡像時運行的shell命令
* COPY //拷貝檔案或目錄到鏡像中
* ADD //解壓壓縮包并拷貝
* ENV //設定環境變數
* USER //為RUN,CMD和ENTRYPOINT執行命令指定用戶運行
* EXPOSE //宣告容器運行的服務埠
* WORKDIR //為RUN,CMD,ENTRYPOINT,COPY和ADD設定作業目錄
* CMD //運行容器時默認執行,如果有多個CMD指令,最后一個生效
* ENTRYPOINT //如果與CMD一起用,CMD將作為ENTRYPOINT的默認引數,如果有多個ENTRYPOINT指令,最后一個生效
docker build
docker build -t centos:7 -f /opt/docker/dockerfile
-t --tag list //鏡像名稱
-f --file string //指定dockerfile檔案位置
構建一個centos7的鏡像
# vim centosfile
FROM centos:7
LABEL maintainer luke
RUN yum install -y wget curl net-tools
COPY a.txt /opt
ADD b.tar /opt
ENV ABC1=1123
EXPOSE 80
WORKDIR /usr/local
CMD ["sleep","36000"]
#CMD ["sh","-c","sleep 36000"] //sleep可以是可執行檔案,36000是引數,sh -c是指定當前shell,可以傳遞變數 sleep必須寫絕對路徑
#ENTRYPOINT /usr/bin/run.sh $NAME //ENTRYPOINT和CMD同時存在的時候,CMD的值會作為ENTRYPOINT的引數
#ENRYPOINT ["echo"]
#CMD ["1","2"] //最終結果為echo 1 2
docker build -t centos7 -f centos7_file . //.代表要copy的檔案在當前目錄
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/228274.html
標籤:Linux
上一篇:shell腳本應用(三)
