每个程序员都应该有一个属于自己的服务器。

前段时间,买的服务器快要到期了,但是续费太贵;自己只是在上面放了一些项目,访问量并不高,所以打算再重新买个,走按量付费模式。

当初考虑到如果换服务器,可能需要在新的服务器中重新安装部署各种软件服务,但是发现某云有直接将服务器打包成镜像的功能,并且可以使用此镜像来创建新的服务器,创建后的服务器和原来的一模一样,这倒是省了我不少事。

但是如果将来换了运营商,就没有这么方便了。

所以最近想将上面部署的所有服务,迁移到Docker中去,使用Docker来管理,将来如果再迁移就方便多了。

# 安装Docker

因为我的服务器是ubuntu,所以采用以下方式,详情可看官方文档

# 设置REPOSITORY

sudo apt-get update

sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg-agent \
    software-properties-common

# 添加Docker的官方GPG密钥:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

# 验证密钥

sudo apt-key fingerprint 0EBFCD88

pub   rsa4096 2017-02-22 [SCEA]
      9DC8 5822 9FC7 DD38 854A  E2D8 8D81 803C 0EBF CD88
uid           [ unknown] Docker Release (CE deb) <[email protected]>
sub   rsa4096 2017-02-22 [S]

# 设置稳定仓库

sudo add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
   $(lsb_release -cs) \
   stable"

# 安装docker引擎

sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io

# 验证是否安装成功

sudo docker run hello-world

此命令会下载测试镜像,输出hello-world

# 使用docker-compose

Compose是用于定义和运行多容器Docker应用程序的工具。通过Compose,您可以使用YAML文件来配置应用程序的服务。然后,使用一个命令,就可以从配置中创建并启动所有服务。

# 安装docker-compose

官方文档

sudo curl -L "https://github.com/docker/compose/releases/download/1.26.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
# or
pip install docker-compose

可通过以下命令验证是否安装成功:

docker-compose -v