docker容器的使用整理

2019/10/24, docker 19.03.4html

摘要:docker容器經常使用命令整理
gitbooks文檔nginx

docker配置

CentOS修改docker源,請在 /etc/docker/daemon.json 中寫入以下內容(若是文件不存在請新建該文件):git

{
  "registry-mirrors": [
    "https://docker.mirrors.ustc.edu.cn/"
  ]
}

修改完成後從新載入以及重啓:web

sudo systemctl daemon-reload
sudo systemctl restart docker

鏡像操做

拉取nginx鏡像:docker pull nginxdocker

列出鏡像:docker image lsjson

刪除鏡像:docker image rm 501 501是要刪除鏡像的IMAGE ID前三位bash

鏡像導出,導出nginx鏡像到當前目錄nginx.tar中:app

docker save nginx > nginx.tar

鏡像導入,導入當前目錄中的nginx.tar:工具

docker load < nginx.tar

容器操做

列出運行中的容器:docker psdocker container lsui

列出全部容器,包括中止的:docker ps -adocker container ls -a

中止全部容器:docker stop $(docker ps -q)

刪除全部容器:docker rm $(docker ps -aq)docker container prune

進入運行中的容器,當 -i -t 參數一塊兒使用時,則能夠看到咱們熟悉的 Linux 命令提示符:

docker exec -it 9bc bash

Dockerfile

鏡像構建時,安裝其餘工具,案例:

FROM mcr.microsoft.com/dotnet/core/aspnet:3.0
#安裝ffmpeg工具(替換了阿里源,而後再安裝)
RUN sed -i "s@http://deb.debian.org@http://mirrors.aliyun.com@g" /etc/apt/sources.list \
    && rm -Rf /var/lib/apt/lists/* \
    && apt-get update \
    && apt-get install -y ffmpeg

WORKDIR /app
COPY ./publish/ /app 
#默認就是80端口,若是要別的端口,代碼中要明確指定監聽端口號
EXPOSE 80
ENTRYPOINT ["dotnet","WebMvc.dll"]

與Dockerfile同一目錄下,構建hdmsweb鏡像,hdmsweb是本身命名的鏡像名稱,注意hdmsweb與.之間有個空格:

docker build -t hdmsweb .

docker-compose

docker-compose啓動容器,-d是後臺運行:

docker-compose up -d

docker-compose查看日誌:

docker-compose logs
相關文章
相關標籤/搜索