Docker使用ベース

2850 ワード

1.インストール
Centos 6.x Dockerパッケージは、デフォルトのCentOS-Extrasソフトウェアソースに含まれています.したがってdockerをインストールするには、次のyumコマンドを実行します.
[root@localhost ~]# yum install docker

Centos 7.x公式ソースのdockerは起動できません.以下は公式のインストール方法です.
# tee /etc/yum.repos.d/docker.repo <
yum install docker-engine

サービスの開始:
[root@localhost ~]# systemctl start docker
[root@localhost ~]# systemctl enable docker

2.docker構成
/etc/sysconfig/docker
起動パラメータを追加
6.x other_args 7.x OPTIONS
作業ディレクトリの変更:
other_args="--graph=/data/docker "

3.運転容器
起動コンテナ(gitlabの例)

docker run --detach \
    --hostname gitlab.xxx.com \
    --publish 443:443 --publish 8080:80 --publish 22:22 \
    --name gitlab \
    --restart always \
    --volume /data/gitlab/config:/etc/gitlab \
    --volume /data/gitlab/logs:/var/log/gitlab \
    --volume /data/gitlab/data:/var/opt/gitlab \
    gitlab/gitlab-ce:latest 

その他の起動パラメータ:
--add-host="www.baidu.com:1.1.1.1"      #     host
--dns="114.114.114.114"                 #    dns

コンテナ運転環境に入る
docker exec -it 703cecb60169 /bin/bash 

4.ミラー操作
4.1既存ミラーの変更
  • 起動容器
  • コンテナで必要な変更
  • コンテナの変更をコミット
  • 新しいミラー起動容器
  • を使用する.
    コンテナの変更をコミット:
    $ sudo docker commit -m "Added json gem" -a "Docker Newbee" 0b2616b0e5a8 ouruser/sinatra:v2
    4f177bd27a9ff0f6dc2a830403925b5360bfe0b93d476f7fc3231110e7f71b1c
    

    4.2 Dockerfileによるミラーの作成
  • ディレクトリ
  • を作成
  • Dockerfileファイル
  • を作成する
  • ミラー
  • を構築
    Dockerfile構文:
    # This is a comment
    FROM ubuntu:14.04
    MAINTAINER Docker Newbee 
    RUN apt-get -qq update
    RUN apt-get -qqy install ruby ruby-dev
    RUN gem install sinatra
    

    コマンド:
  • FROM、ベースミラー名を指定し、Dockerはあるミラーに機能
  • を追加することができる.
  • MAINTAINER、指定作成者情報
  • RUN "RUN "、運転命令
  • CMD "CMD ["command", "param1"]"は、コンテナの起動後に実行するコマンドを指定し、各コンテナには1つのCMDコマンドしかないが、複数ある場合は、最後の1つを基準として
  • である.
  • EXPOSE "EXPOSE [...]"、Docker容器露出ポート
  • を指定する.
  • ENV "ENV "、環境変数
  • を指定
  • ADD "ADD "、リソースをコンテナにコピーするか、URLであってもよく、tarファイルである場合は自動的に解凍(相対パスの使用に注意)
  • .
  • COPY "COPY "は、コピーファイル(相対パス)
  • でもある.
  • USER "USER USERNAME(UID)",コンテナ運転時のユーザ
  • を指定する.
  • WORKDIR "WORKDIR /path/to/workdir"は、後続命令のために作業ディレクトリ
  • を構成する.
    ビルドミラー:
    $ sudo docker build -t="ouruser/sinatra:v2" .