之前学习docker的时候,是在windows上直接使用可执行文件安装的,最近需要在自己的服务器上安装docker,特此了解了一下如何安装,这里补一下。
centos安装docker
安装方式可以分为一下三种,官方推荐的是第一种,但是基于国情,还是下载下来手动安装得好。
- 仓库安装
- 手动安装
- 脚本安装
仓库安装
1. 设置仓库
1.1 安装依赖
$ sudo yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
1.2 获取仓库
$ sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
1.3 (可选择)开启edge
和test
仓库。这两个仓库默认包含在上面已经安装的docker-ce.repo
中,不过默认是关闭的,打开它们可以使用下面命令。
$ sudo yum-config-manager --enable docker-ce-edge
$ sudo yum-config-manager --enable docker-ce-test
同样,禁用它们只需要使用--disable
就可以了
$ sudo yum-config-manager --disable docker-ce-edge
2. 安装Docker CE
2.1 安装最新版本的Docker CE
$ sudo yum install docker-ce
2.2 如果你想安装特定版本的,可以按照以下的步骤
# 列出所有
$ yum list docker-ce --showduplicates | sort -r
docker-ce.x86_64 18.03.0.ce-1.el7.centos docker-ce-stable
# 选择一个版本安装
$ sudo yum install docker-ce-<VERSION STRING>
2.3 启动docker
$ sudo systemctl start docker
2.4 验证docker是否运行
$ sudo docker run hello-world
3. 更新Docker CE
安装以上的安装流程即可,使用list
列出所有可以更新的包,选择一个你想安装的。
手动安装
- 下载安装包
在https://download.docker.com/linux/centos/7/x86_64/stable/Packages/上去下载rpm
包
tips: 如果要安装edge
版本,可以将上面的stable
改成edge
就可以了,关于edge
和stable
的区别,可以移步这里Learn about stable and edge channels
- 安装Docker CE
$ sudo yum install /home/packages/docker-ce-18.03.1.ce-1.el7.centos.x86_64.rpm
- 启动Docker服务
$ sudo systemctl start docker
- 验证docker是否运行
$ sudo docker run hello-world
- 如何手动更新
# 下载最新的rpm包
# 重复之前的安装步骤
# 使用yum -y upgrade 替代 yum -y install 命令
脚本安装
可以从get.docker.com来下载对应的脚本来直接安装。关于脚本安装的风险性,麻烦参照官网。
$ curl -fsSL get.docker.com -o get-docker.sh
$ sudo sh get-docker.sh
<output truncated>
If you would like to use Docker as a non-root user, you should now consider
adding your user to the "docker" group with something like:
sudo usermod -aG docker your-user
Remember to log out and back in for this to take effect!
WARNING: Adding a user to the "docker" group grants the ability to run
containers which can be used to obtain root privileges on the
docker host.
Refer to https://docs.docker.com/engine/security/security/#docker-daemon-attack-surface
for more information.
docker-compose安装
curl方式安装
下载docker-compose
在github
仓库的二进制源码,然后按照以下步骤进行:
- 下载Docker Compose
sudo curl -L https://github.com/docker/compose/releases/download/1.21.2/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose
- 给二进制执行文件赋予权限
sudo chmod +x /usr/local/bin/docker-compose
- 测试安装是否成功
$ docker-compose --version
docker-compose version 1.21.2, build 1719ceb
升级
version <= 1.2
: 升级之前删除或者合并容器version >= 1.3
: 可以直接使用labels
合并
docker-compose migrate-to-labels
如果你不想保留之前的容器,只需要删除即可:
docker container rm -f -v myapp_web_1 myapp_db_1 ...
删除
sudo rm /usr/local/bin/docker-compose
pip方式安装
安装pip
curl "https://bootstrap.pypa.io/get-pip.py" -o "get-pip.py"
python get-pip.py
pip --help
pip -V
安装Docker Compose
sudo pip install -U docker-compose
卸载Docker Compose
sudo pip uninstall docker-compose
参考地址
https://docs.docker.com/install/linux/docker-ce/centos/#install-using-the-convenience-script