一、前言
工作中其实就是点点点,但社会所逼,搞的啥都要学,啥都要懂,只能说太卷了。
二、什么是Docker
Docker 是一个开源的应用容器引擎,容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极
低,Docker的思想来自于集装箱。
Docker 包括三个基本概念:
1.镜像(Image):Docker 镜像(Image),就相当于是一个 root 文件系统。比如官方镜像 ubuntu:16.04 就包含了完整的一套
Ubuntu16.04 最小系统的 root 文件系统。
2.容器(Container):镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的类和实例一样,镜像是静态的定义,
容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。
3.仓库(Repository):仓库可看成一个代码控制中心,用来保存镜像。
三、Centos 7.x 下安装 Docker
配置 Docker Repository
在主机上首次安装 Docker Engine之前,需要设置 Docker Repository,之后可以从 Repository 安装和更新 Docker
step 1: 安装必要的一些系统工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
Step 2: 添加软件源信息,国内 Repository 更加稳定
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
Step 3: 更新
sudo yum makecache fast
安装最新版本的 Docker Engine 和 Container
sudo yum install docker-ce docker-ce-cli containerd.io
*安装成功后不代表 Docker 已成功,且 Docker 组虽已创建,但没有用户添加到该组
启动 Docker
sudo systemctl start docker
验证 Docker Engine 是否已正确安装
通过运行 hello-world 映像来验证
[root@izwz9h9zh63ynh76y7dmptz ~]#sudo docker run hello-world
Hello from Docker!
This message shows that your installation appears to be working correctly.
To generate this message, Docker took the following steps:
- The Docker client contacted the Docker daemon.
2.The Docker daemon pulled the "hello-world" image from the Docker Hub.
- The Docker daemon created a new container from that image which runs the
executable that produces the output you are currently reading. - The Docker daemon streamed that output to the Docker client, which sent it
to yourt=nnn。
To try something more ambitious, you can run an Ubuntu container with:
$ docker run -it ubuntu bash
Shere images,automate workflows, and more with a free Docker ID:
https://hub.docker.com/
For more examples and ideas, visit:
https://docs.docker.com/get-started/
[root@izwz9h9zh63ynh76y7dmptz ~]#
四、Docker常用命令
参考https://www.runoob.com/docker/docker-command-manual.html
1、查看正在运行的容器:docker ps
2、查看所有容器:docker ps-a
-a查看所有容器,
-l查看最新创建的容器,
-n=x,查看最后创建的x个容器
3、启动或者重启容器
docker start 容器名或容器ID
docker restart 容器名或容器ID
4、停止所有的容器,要想删除镜像,必须要先删除容器
docker stop $(docker ps -a -q)
5、停止单个容器,容器名可以通过docker ps获得
docker stop 容器名或容器ID
或者 docker kill 容器名或容器ID
6、删除所有的容器:docker rm $(docker ps -a -q)
7、删除单个容器:docker rm 容器名
8、删除正在运行的容器:docker rm -f 容器名
9、删除全部镜像:docker rmi $(docker images -q)
10、删除单个镜像,imageId可通过dokcer images查看到
docker rmi imageId