Docker 概念
Docker 官网有一句雄心勃勃的口号:“Build, Ship, and Run Any App, Anywhere”。
Docker是一个针对开发者和系统管理员的使用容器(container)开发(develop),部署(deploy)和运行(run) 应用的平台(platform)。使用 Linux 容器来部署应用被称为容器化(containerization)。
镜像和容器
通过运行一个**镜像(image)来启动一个容器。一个镜像是一个可执行包,包含了运行一个应用所需的一切东西——代码,运行时,库,环境变量和配置文件等。
一个容器(container)**是镜像的一个运行实例——当镜像被执行变成在内存中(有状态的镜像或者一个用户进程)。在 Linux 中,可以使用命令 docker ps
来查看你的运行容器列表。
容器和虚拟机
一个 容器(container) 原生地(natively)运行在 Linux 上,和其它容器分享主机的内核。容器运行一个分离(discrete)的进程,不比其它可执行程序占用更多内存,所以是轻量级的(lightweight)。
相反的,一个虚拟机(virtual machine(VM))运行在一个完整的(full-blown ) 客户(guest)操作系统上,通过系统管理程序(hypervisor)来虚拟地(virtual)访问主机资源。一般来说,VM比大多数应用要占用更多的资源。
安装 Docker
按照官方教程在 Centos 系统上安装 Docke CE。
国内安装因为墙太慢,可以使用阿里镜像源安装。
# step 1: 安装必要的一些系统工具
sudo apt-get update
sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common
# step 2: 安装GPG证书
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
# Step 3: 写入软件源信息
sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
# Step 4: 更新并安装 Docker-CE
sudo apt-get -y update
sudo apt-get -y install docker-ce
检测 Docker 版本
- 运行
docker --version
来确保你有足够的版本: - 使用
docker info
或者(docker version 不适用
–`)来查看你的 docker 安装细节。
测试 Docker 安装
-
通过运行一个简单的 Docker 镜像
hello-world
来测试安装:docker run hello-world
-
列出下载到你机器的
hello-world
镜像:docker image ls
-
列出
hello-world
容器(由镜像生成),如果容器正在运行,不需要--all
选项:docker container ls --all
镜像加速
国内使用 DaoCloud 来加速镜像获取:https://www.daocloud.io/mirror
图形界面
使用Portainer的图形界面管理Docker
- 拉取Portainer镜像
$ docker pull portainer/portainer
- 开放Docker网络管理端口
$ vim /etc/systemd/system/multi-user.target.wants/docker.service
# 将ExecStart一行修改为下面内容
ExecStart=/usr/bin/dockerd -H unix:// -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock
- 启动Portainer容器
-H后面参数指定的是宿主机IP和宿主机上Docker虚拟机的端口2375,Portainer用此来管理宿主机的Docker。
$ docker run -d -p 9000:9000 portainer/portainer -H tcp://192.168.99.196:2375
参考资料
[1] https://docs.docker.com/get-started/ “Docker Docs”
[2] https://blog.csdn.net/u011365831/article/details/78851663 “Docker CE 镜像源站”