Dockerは、仮想化環境でのアプリケーションの展開と管理を自動化するためのソフトウェアです(
Wikipediaを参照 )。
詳細なインストール手順は、公式Webサイト
https://docs.docker.com/engine/installation/にあります。この記事を読んでいるのであれば、おそらくドッカーに慣れているので、次のステップに進む準備ができています。実稼働サーバーへのアプリケーションの配信を便利にするために独自の登録を行ってください。
新しいプロジェクトを始めたとき、ドッカーを使用することにしました。 どういうわけかサーバーに配信する必要がある4つのコンテナーが判明しました。 以下は私から何が生まれたのかについての物語です。
入り口で利用できるもの:
- docker@1.10.3を使用したUbuntu 14.04 64ビット上のIPアドレス(ドメインなし)を持つ仮想サーバー-ここで登録を行い、ここから画像を取得します
- docker@1.9.1およびdocker-machine@0.5.5を使用したOS X 10.11.3上の作業コンピューター
Docker Registerは、バージョン管理されたdockerイメージを持つリポジトリです。
レジスタを使用してアプリケーションをサーバーに配信すると便利です。
- 動作中のコンピューターで画像を収集し、レジスターに送信します
- 仮想サーバーで、レジスタからイメージを取得して実行します
ドッカーにはサービスとして公式の登録があります:
https :
//hub.docker.comそこにパブリックイメージを無制限に配置でき、プライベートイメージを1つだけ配置できます。 追加のプライベート画像は有料で追加できます。
レジスタを使用するための別のオプションは、独自のものを上げることです。
Dockerは
登録サーバーに公式イメージを提供し
ます 、加え
て起動のための指示がある
ドキュメントがあり
ます 。
Dockerレジスタは、httpとhttpsの両方で機能します。 安全な接続を使用する場合、個々のユーザーの承認も可能です。 ただし、ドメイン名でのみ購入できる証明書が必要です。 自己署名証明書を機能させることはできませんでした(インターネットでこれに問題があることを読みました)。 私はドメイン名を持っていないため、
http経由でアクセスできるオープンレジスタを検討します 。 これは、誰かがあなたのレジスタのアドレスを見つけた場合、そのアドレスを自由に使用できることを意味します。
登録開始
サーバーのセットアップ
レジスタは、1つのコマンドで起動されるドッカーコンテナーです。
› docker run -d -p 5000:5000 --restart=always --name registry registry:2
完了しましたが、このサーバー上のdockerクライアントが認証なしでオープン接続を介してレジスタにアクセスするには、構成ファイル
/ etc / default / dockerに行を追加する必要があり
ます 。
DOCKER_OPTS="$DOCKER_OPTS --insecure-registry <ip- >:5000"
次に、Dockerを再起動する必要があります。
› service docker restart
クライアント設定
私のコンピューターは、VirtualBox仮想化システムを使用してdockerを実行します。このdockerは、boot2docker(dockerを備えた最小のLinuxイメージ)を実行し、コンテナーで動作します。 コンピューター上のVirtualBoxの下で複数の仮想マシンを実行できますが、それらの管理にはdocker-machineが使用されます。
認証なしでオープン接続を介してレジスタにアクセスできるようにするには、構成ファイルにオプションを追加する必要があります。これは、コンテナが動作する仮想マシン内にあります。
仮想マシンのリストを見てみましょう:
› docker-machine ls NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS default * virtualbox Running tcp://192.168.99.100:2376 v1.9.1
仮想マシンに接続します。
› docker-machine ssh default
ファイル
/ var / lib / boot2docker / profileが含まれていますが、その中には次のようなフラグメントがあります。
EXTRA_ARGS=' --label provider=virtualbox '
sudoで編集するために開き、次のようになります。
EXTRA_ARGS=' --label provider=virtualbox --insecure-registry <ip- >:5000 '
登録の使用
動作中のコンピューターからの画像の形成と送信
現在のディレクトリに既にDockerfileがあり、
my-imageという新しいイメージを収集できることを想像してください。
› docker build -t my-image .
これで、画像にタグを追加して、レジスタに送信できます。
› docker tag my-image <ip- >:5000/my-image:latest › docker push <ip- >:5000/my-image:latest
サーバー上のイメージの取得
これでイメージがレジスタに追加されました。サーバーで取得して実行できます。
› docker pull <ip- >:5000/my-image:latest › docker run -d <ip- >:5000/my-image
おわりに
そこで、ドッカー画像を保存するための独自のオープンレジスタを作成し、それを使用して画像を送受信する例を調べました。
私は本当にそのようなガイドを見逃したので、これが誰かに役立つことを願っています。