目录
理论
基础操作
在Ubuntu上配置Docker
理论
1.容器的概念:容器是对应用程序及其依赖关系的封装,可以看成是一个轻量级的虚拟机环境。
- 容器能与主机的操作系统共享资源
- 运行容器开销小,可以大数量多开
- 容器具有强可移植性,换个电脑也能跑
- 虚拟机的目的是要完整地模拟另一个环
境;而容器的目的则是使应用程序能够移植,并把所有依赖关系包含进去(这一点有点像yum)
2.Docker利用的是Linux的容器技术,Docker 平台拥有两个不同部分
- 负责创建与运行容器的Docker引擎
- 用来发布容器的云服务Docker Hub
3.Docker工具:
- 集群管理工具Swarm
- 用于处理容器的图形用户界面Kitematic,
- 部署Docker主机的命令行工具Machine。
基础操作
1.运行第一个镜像
1 | docker run debian echo "Hello World" |
2.在镜像中使用shell
1 | docker run -i -t debian /bin/bash |
3.用指定主机名“CONTAINER”启动镜像
1 | docker run -h CONTAINER -i -t debian /bin/bash |
4.查看正在运行的容器信息,会出现容器id和名称(这两个字段都可以用作inspect的参数)
1 | doker ps |
5.显示某容器的详细信息
1 | docker inspect xx |
6.显示某容器哪些文件被改动过
1 | docker diff xx |
7.显示容器中发生的一切操作记录
1 | docker logs xx |
8.删除容器
1 | docker rm xx |
在Ubuntu上配置Docker
1.安装Docker
- 更新apt源索引
1
sudo apt-get update
- 允许apt通过HTTPS使用仓库
1
2
3
4
5sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
software-properties-common - 添加Docker官方的GPG密钥
1
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
- 设置Docker稳定版仓库
1
2
3
4sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable" - 再一次更新apt源索引
1
sudo apt-get update
- 下载安装Docker社区版
1
sudo apt-get install docker-ce
2.检查Docker是否配置正确
- 检查Docker CE是否安装正确若出现下述内容则表示安装正确
1
sudo docker run hello-world
1
2
3
4
5
6
7
8Hello from Docker!
This message shows that your installation appears to be working correctly.
To generate this message, Docker took the following steps:
1. The Docker client contacted the Docker daemon.
......
For more examples and ideas, visit:
https://docs.docker.com/get-started/ - 检查Docker是否可用若只出现Client配置,则表示权限不正确
1
docker version
需输入1
2
3
4
5
6
7
8
9
10Client: Docker Engine - Community
Version: 20.10.7
API version: 1.41
Go version: go1.13.15
Git commit: f0df350
Built: Wed Jun 2 11:56:38 2021
OS/Arch: linux/amd64
Context: default
Experimental: true
Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.24/version: dial unix /var/run/docker.sock: connect: permission denied之后显示以下内容,则表示Docker安装正确并可用1
sudo chmod a+rw /var/run/docker.sock
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29Client: Docker Engine - Community
Version: 20.10.7
API version: 1.41
Go version: go1.13.15
Git commit: f0df350
Built: Wed Jun 2 11:56:38 2021
OS/Arch: linux/amd64
Context: default
Experimental: true
Server: Docker Engine - Community
Engine:
Version: 20.10.7
API version: 1.41 (minimum version 1.12)
Go version: go1.13.15
Git commit: b0f5bc3
Built: Wed Jun 2 11:54:50 2021
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.4.6
GitCommit: d71fcd7d8303cbf684402823e425e9dd2e99285d
runc:
Version: 1.0.0-rc95
GitCommit: b9ee9c6314599f1b4a7f497e1f1f856fe433d3b7
docker-init:
Version: 0.19.0
GitCommit: de40ad0