本文只是简单的记录一些docker的方式,具体说明会在后续的文章中写到 本实例的OS版本 $ cat /etc/redhat-release
CentOS Linux release 7.3.1611 (Core)
仓库配置文件:https://download.docker.com/linux/centos/docker-ce.repo $ sudo wget -P /etc/yum.repos.d/ https://download.docker.com/linux/centos/docker-ce.repo $ sudo yum repolist
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
repo id repo name status
base/7/x86_64 CentOS-7 9,911
docker-ce-stable/x86_64 Docker CE Stable - x86_64 20
epel/x86_64 Extra Packages for Enterprise Linux 7 - x86_64 12,671
extras/7/x86_64 CentOS-7 402
updates/7/x86_64 CentOS-7 1,333
repolist: 24,337
安装并运行docker $ sudo yum install -y docker-ce $ sudo systemctl enable docker.service $ sudo systemctl restart docker.service
环境配置文件 /etc/sysconfig/docker-network /etc/sysconfig/docker-storage /etc/sysconfig/docker
Unit File /usr/lib/systemd/system/docker.service
Docker Registry配置文件 /etc/containers/registries.conf
docker-ce 配置文件 /etc/docker/daemon.json
Docker镜像加速 docker cn 阿里云加速器 中国科技大学 {
"registry-mirrors": ["https://registry.docker-cn.com"]
}
查看doker相关信息,以及docker命令帮助 $ sudo docker info $ sudo docker version $ sudo docker --help
查找镜像,很多人因为不同的用途创建了各种不同的imags,使用docker search IMAGS_NAME 命令来查找它们 里面返回的结果包括image名字、描述、该image的受欢迎程度、是否是官网创建、是否自动创建 $ sudo docker search centos NAME DESCRIPTION STARS OFFICIAL AUTOMATED
centos The official build of CentOS. 4 672 [OK]
ansible/centos7-ansible Ansible on Centos7 116 [OK]
...................................
现在使用pull来下载一个镜像,如未指定具体版本仓库等信息,默认是下载最新版本,比如centos的最新版本7.5,标签是latest $ sudo docker pull centos
查看已有的镜像,镜像下载完成后可以在 IMAGE ID 看到12位的hash值,这是镜像ID的精简表示,这些 IMAGE ID 是完整镜像ID的前12个字符 $ sudo docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
centos/mysql-57-centos7 latest 2e4ddfafaa6f 2 weeks ago 445MB
centos latest 5182e96772bf 4 weeks ago 200MB
查看镜像的完整信息 $ sudo docker inspect centos
基于镜像来跑一个container,--name给container取一个名字,-t分配一个伪终端并绑定到container的标准输入上,-i让container的标准输入保持打开(交互式) [qkc@server166 ~]$ sudo docker run --name c1 -it centos /bin/bash
[root@2ef331ac626e /]#
container的核心是为所执行的应用程序提供依赖的环境,环境中的资源都是应用程序运行所必须的。这种特点使得container对资源的利用率极高 [root@2ef331ac626e /]# ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 11820 1880 pts/0 Ss 05:01 0:00 /bin/bash
root 15 0.0 0.0 51708 1716 pts/0 R+ 05:04 0:00 ps aux
退出container 按住ctrl,再按p和q
再次进入container $ sudo docker container exec -it c1 /bin/bash
|