インストール
この記事では、Dockerを使用してLinuxにdigitaloceanランナーをインストールする方法について説明します。digitaloceanランナーは、DockerHubで配布される最小限のDockerイメージとしてパッケージ化されています。
ステップ1:ダウンロード
Dockerをインストールし、パブリックイメージをプルします。
$ docker pull drone/drone-runner-digitalocean
ステップ2:キーをアップロードする
sshキーペアを作成し、Digital Oceanに追加します。ランナーは、リモート認証とドロップレットへのアクセスにsshキーを使用します。
ステップ3:構成
ランナーは、環境変数を使用して構成されます。この記事では、以下の構成オプションについて説明します。構成オプションの完全なリストについては、構成を参照してください。
- DRONE_RPC_HOST
Droneサーバのホスト名(およびオプションのポート)を提供します。ランナーはホストアドレスでサーバに接続して、実行用のパイプラインを受信します。
- DRONE_RPC_PROTO
Droneサーバへの接続に使用されるプロトコルを提供します。値はhttpまたはhttpsのいずれかである必要があります。
- DRONE_RPC_SECRET
Droneサーバでの認証に使用される共有シークレットを提供します。これは、Droneサーバ構成で定義されているシークレットと一致する必要があります。
- DRONE_PUBLIC_KEY_FILE
マシンへのリモートsshアクセスに使用される公開鍵を提供します。この公開鍵は、digital oceanアカウントにも追加する必要があります。
- DRONE_PRIVATE_KEY_FILE
マシンへのリモートsshアクセスに使用される秘密鍵を提供します。
ステップ4:インストール
以下のコマンドは、コンテナを作成し、ランナーを開始します。以下の環境変数をDroneサーバの詳細に置き換えることを忘れないでください。
$ docker run -d \
-v /path/on/host/id_rsa:/path/in/container/id_rsa \
-v /path/on/host/id_rsa.pub:/path/in/container/id_rsa.pub \
-e DRONE_RPC_PROTO=https \
-e DRONE_RPC_HOST=drone.company.com \
-e DRONE_RPC_SECRET=super-duper-secret \
-e DRONE_PUBLIC_KEY_FILE=/path/in/container/id_rsa.pub \
-e DRONE_PRIVATE_KEY_FILE=/path/in/container/id_rsa \
-p 3000:3000 \
--restart always \
--name runner \
drone/drone-runner-digitalocean
ステップ5:検証
docker logs
コマンドを使用してログを表示し、ランナーがDroneサーバとの接続を正常に確立したことを確認します。
$ docker logs runner
INFO[0000] starting the server
INFO[0000] successfully pinged the remote server