Docker基本操作指南

基础知识

Docker基本操作指南_第1张图片

 Docker基本操作指南_第2张图片

docker version

获取docker版本信息

docker version 

Docker基本操作指南_第3张图片

 docker info

获取docker详细信息

docker info

Docker基本操作指南_第4张图片Docker基本操作指南_第5张图片

Docker基本操作指南_第6张图片

docker search 

搜索镜像

docker search  centos
docker search nginx

Docker基本操作指南_第7张图片

 一般搜索镜像都在官方搜索:https://hub.docker.com/search?q=alpine&type=image

Docker基本操作指南_第8张图片

Docker基本操作指南_第9张图片

 docker pull 

拉取一个镜像到本地,如本地已经,则不会重拉

Docker基本操作指南_第10张图片

docker pull alpine:latest

Docker基本操作指南_第11张图片

#拉取指定位置的镜像,如阿里云
docker pull xxx.com/alpine:latest

docker push

推送本地的镜像到镜像仓库

docker run 

#前台运行一个docker容器
docker run  -ti nginx:latest  bash
#前后台运行一个docker容器
docker run -d centos:centos8.4.2105 bash 

后台运行的容器执行完1-100输出后,直接退出,,状态为exited

docker logs

Docker基本操作指南_第12张图片

Docker基本操作指南_第13张图片

docker ps

#查看正在运行容器
docker ps 
#查看所有容器
docker ps  -a
#查看正在运行容器的id
docker ps  -q
#查看正在运行容器的id
docker ps  -qa

docker exec

进入正在运行的容器中

docker exec -ti 7aa413168878 bash
docker exec -ti 7aa413168878 sh

Docker基本操作指南_第14张图片

kubectl exec -ti  nginx-689dc9f579-kwnrk  -- sh
docker run -ti -p 12345:80 nginx:latest 

Docker基本操作指南_第15张图片

docker cp

宿主机---->docker

Docker基本操作指南_第16张图片

docker---->宿主机

Docker基本操作指南_第17张图片

docker rmi

删除镜像

Docker基本操作指南_第18张图片

docker rm

删除容器 

Docker基本操作指南_第19张图片

 docker stop

 docker start

docker history

查看镜像的修改记录

Docker基本操作指南_第20张图片

docker build

docker build  -t ImageName:TagName dir

-t − 给镜像加一个Tag
ImageName − 给镜像起的名称
TagName − 给镜像的Tag名
Dir − Dockerfile所在目录

docker commit

提交修改后的镜像

docker commit -a "zhaodaye" -m "add index.html"  04661cdce581  nginx:commit
docker run -ti    nginx:latest  bash
##exit退出容器,docker ps -a的exited中有此容器
docker run -ti  --rm  nginx:latest  bash
#exit退出容器及删除,docker ps -a的exited中无此容器;

Dockerfile命令

Docker基本操作指南_第21张图片

CMD和ENDRYPIONT必须要有一个;

CMD可以被覆盖,如果有ENTRYPOINT的话,CMD就是ENTRYPOINT的参数;

ENTRYPOINT----->COMMAND;CMD------>arg;

ADD:复制后解压;copy:复制不解压;

演示dockerfile使用

01 测试RUN命令

mkdir dockerfiles;
cd dockerfiles;
vim Dockerfile;



Docker基本操作指南_第22张图片

使用docker bulid命令生成镜像

docker build  -t centos:user .

 查看生成的镜像

Docker基本操作指南_第23张图片

 运行镜像 :

docker run -ti --rm centos:user bash
---rm退出即删除

 进入容器,查看run命令执行结果

02 测试CMD命令

Docker基本操作指南_第24张图片

docker build  -t centos:cmd .

03 ENTRYPOINT命令测试

03-01测试

Docker基本操作指南_第25张图片

docker build -t centos:ep .

03-2测试

Docker基本操作指南_第26张图片

docker build -t centos:ep1 .

04 ENV测试

docker build -t centos:ep_env .

 测试如下:

 05 ADD命令测试

Docker基本操作指南_第27张图片

Docker基本操作指南_第28张图片

docker build -t centos:add .

Docker基本操作指南_第29张图片

 05 COPY命令测试

Docker基本操作指南_第30张图片

docker run -ti --rm centos:copy  bash

06 WORKDIR命令测试

Docker基本操作指南_第31张图片

docker build -t centos:workdir1 .

07 USER命令测试

Docker基本操作指南_第32张图片

Docker基本操作指南_第33张图片

docker build -t centos:user  .

08 VOLOME命令测试

Docker基本操作指南_第34张图片

docker run -ti --rm centos:volume  bash

Docker基本操作指南_第35张图片

docker run  -ti -v /root/mysql_data/:/data centos:volume  bash

Docker基本操作指南_第36张图片

制作小镜像

一定不要使用centos镜像

建议使用:Alpine,busybox,scratch,Debian镜像,可以优化镜像大小

Glibc:优先使用node:slim python:slim

Docker基本操作指南_第37张图片

Docker基本操作指南_第38张图片

Docker基本操作指南_第39张图片

docker build -t alpine:workdir .

运行镜像

docker run -ti --rm alpine:workdir  sh

使用多阶段构建:编译阶段和生成最终镜像的操作分开;多个FROM

Docker基本操作指南_第40张图片

docker build  -t hello:single_bulidnew  .
docker run -ti --rm hello:single_bulidnew 

 验证成功:

Docker基本操作指南_第41张图片

生成镜像

docker build  -t hello:alpine .

Docker基本操作指南_第42张图片

Docker基本操作指南_第43张图片

 Docker基本操作指南_第44张图片

 scratch镜像:程序仅依赖静态库,不依赖动态库时考虑;

Docker基本操作指南_第45张图片

docker build  -t hello:scratch   .

docker build  -t hello:scratch   .

 验证成功

 

 

常见命令参考:

https://docs.docker.com/engine/reference/commandline/version/

https://www.coonote.com/docker/docker-basic-command.html

你可能感兴趣的:(docker,docker,容器,运维)