プログラミングのゴミ箱

日々の学習の中で知らなかったことについて、調べたことを解説します。

ローカルで作ったDockerプロジェクトをVPS上で起動しよう

今回の流れ

chanichiwasshoi.hateblo.jp

この記事で作ったRails+Postgreを管理するDockerをさくらのVPSに移植したい!
具体的にはローカルでDockerアプリを作ってgithubに公開。その後VPSgithubからpullしてきてdockerを立ち上げる。これで完璧のぺきちゃん!

VPSのOS: CentOS 7


1. ローカルのプロジェクトをgithubにpush

addやらcommitやらREADMEの追加やらを済ませたらちゃっちゃとgithubへpush!

2. VPS上でdockerのインストール

Install Docker Engine on CentOS | Docker Documentation

このサイトを参考に、まずは過去にdockerをインストールしている可能性がある場合はそれらを削除。

sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

次に、必要なパッケージをインストールして

sudo yum install -y yum-utils

VPSにdockerのリポジトリを追加。

sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo

dockerの本体をインストール。

sudo yum install docker-ce docker-ce-cli containerd.io

dockerを有効化

sudo systemctl start docker

動作確認

sudo docker run hello-world
Hello 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.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (amd64)
 3. The Docker daemon created a new container from that
...

完璧です!

dockerの自動起動設定。

sudo systemctl enable docker

3. docker-composeのインストール

Install Docker Compose | Docker Documentation
このサイトに従ってやっていく。
と言ってもメチャクチャ簡単でコマンド2行で出来ます。

sudo curl -L "https://github.com/docker/compose/releases/download/1.29.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.29.2, build 5becea4c

ok.

あとは/var/www/htmlの中にgithubに公開したDockerプロジェクトをクローンしてdocker-compose upを実行すれば終わりでーす!