Docker

最終更新:2020/03/09

トップページへ戻る
docker-composeをインストールしないで使う

   docker-composeをインストールなしで使う

CentOS8にDockerインストール

   CentOS8にDockerを入れる

   CentOS8でDockerCEをinstallする

   CentOs8にdockerをインストール

   【tech】CentOS8にDockerをインストールしてみたメモ

   centos8 に #docker ce をインストール。

   Docker+CentOS8にnginxをインストールする

secrets

   docker 1.13/docker-compose.yamlのformat ver3.1からサポート

   Docker/Docker ComposeのSecretsを試す

Docker 18.09

   Docker Engine 18.09 から使える Build-time secrets を試してみた

ヘルスチェック(Dockerfile)

   DockerのHEALTHCHECKの動きを理解する

   Docker 1.12の新機能、ヘルスチェック機能を使ってみる

   Docker 1.12のヘルスチェック機能でコンテナを死活監視する

   [Docker]HEALTHCHECKオプションを試す

ヘルスチェック(docker-compose)

   docker-compose healthcheck does not work in a way it is expected for making container a run first and then container B

   depends_on Should Obey {{ State.Healthcheck.Status }} Before Launching Services #3754

   Docker stack deploy healthcheck in V3 docker-compose.yml not working in CoreOS Alpha 1339.0.0 #1848

   docker-compose.yml

   Template Designer を起動するための Docker Compose yaml リファレンス

DockerでユーザーをDockerグループに追加

   Dockerでユーザーをdockerグループに追加することの危険性を理解しよう

   ユーザをdockerグループに入れる

   Dockerで一般ユーザにsudoをさせようと思ったらパスワードが必要だったので、パスワードなしsudoを許可させる方法

   Dockerグループにユーザを登録してsudoなしでdockerコマンドを使えるようにする

   dockerをsudoなしで実行する ~ グループ追加 ~

   Linux環境でdockerのコマンドをsudoなしで打てるようにする

実行ユーザーとグループを指定

   FluentdのDockerコンテナを起動する時は、docker-composeで試したときに「user: root:root」を指定したら想定通りの動きになった

   Dockerで実行ユーザーとグループを指定する

   Dockerのパーミッションエラーを調べる

UIDとGID

   Dockerでuid/gid指定可能かつsudo実行可能なユーザとしてコンテナを起動する

   docker run するときにUID,GIDを指定する

   dockerでvolumeをマウントしたときのファイルのowner問題

   Dockerコンテナ内のユーザとホストのユーザとの関係について

   Docker コンテナ内に一般ユーザーを作成する

   Docker コンテナ内で Docker ホストと同じユーザを使う

vimが使えない場合

   Docker — docker コンテナの中で vim が使えない場合

Dockerコマンド

   docker container / image コマンド新旧比較

   Docker ハンズオン - 基本コマンド編

   Dockerライフサイクルをハンズオンで学ぶ

   docker-composeでよく使うコマンド

   Docker コマンドチートシート

docker-slim

   docker-slimを使ってDockerイメージのダイエット

   Docker Container Imageのダイエット

   docker-slimによるImageの簡単ダイエット

   DockerSlim 使ってみた

spotify/docker-gc

   dockerのcontainerとimageを一括削除する方法「spotify/docker-gc」

使用されていないcontainer, network, image, volumeなどを削除

docker system pruneコマンドで、使用されていないcontainer, network, image, volumeなどを削除することができるようです。便利!
volumeの削除は17.06.1から追加されており、--volumesを付けない限りvolumeが削除されることはないようです。

Dockerfileメモ

   Dockerfileを極めて、Dockerマスターになろう!

・MAINTAINERは非推奨。LABELを使う
   1.13よりDockerfileのMAINTAINERは非推奨、代わりにLABELを使おう 

・CMDとENTRYPOIN

   [docker] CMD とENTRYPOINT の違いを試してみた

   dockerのENTRYPOINTとCMDの書き方と使い分け、さらに併用
   
   DockerfileのCMDとENTRYPOINTを改めて解説する
   
   docker CMD ENTRYPOINT命令の違い
 
   CMDとENTRYPOINTの違いと、使用例
   
・その他

   Dockerfile のベストプラクティス

   Dockerfileを書くときに気をつけていること10選

   【入門】Dockerfileの基本的な書き方

   Dockerfileの"ENV"と"ARG"と"環境変数"について

   コンテナイメージの縮小

docker run / docker-compose.yml

・docker run のカレントディレクトリ
   MacOSXやUbuntuなどでは、環境変数$PWDによって実行中のディレクトリの絶対パスを取得できる
   万が一、環境変数$PWDが設定されていないOS上で実行する場合は、上述の$PWDを$(pwd)に置き換える

・dockerコマンドの --link オプションは非推奨。--linkオプションは使わずに、
 コンテナ間名前解決をするには、Dockerネットワークを作成し、そこにコンテナを参加させれば良い
   dockerのlinkオプションがレガシーなので、コンテナ間で名前解決できるようにネットワークを用意する

・起動中のコンテナにオプション追加
   [Docker] 起動中のコンテナに --restart=always オプションを後から適用する

   ホストを再起動した時などにDockerコンテナを自動的に再起動できるようにする

Dockerコンテナ内でsystemdを使ってサービス起動

   CentOS 7のDockerコンテナ内でsystemdを使ってサービスを起動する

Dockerfile内でsystemd関連(systemctl/timedatectlなど)は実行できない

   Dockerfileでのsystemctl実行方法について

   (docker build) centos7で"timedatectl"に失敗する原因が知りたい

Dockerコンテナのタイムゾーン変更

・/etc/localtime をホストに volume マウント は、やらないほうがよい
   Docker で /etc/localtime をホストに volume マウントしてハマった話

・環境変数「TZ」が使えるOSなら、それを使う
  ・ubuntu:xenial で -e TZ=Asia/Tokyo を付けて docker runしても変わらないという情報あり
    Ubuntu 16.04(xenial)のDockerコンテナのタイムゾーンを日本(JST)にする(Dockerfileで)
  ・Alpine Linuxは、zoneinfo とかはそのままだと用意されていないので、apk で tzdata パッケージをインストールする必要があります。
    Alpine Linux でタイムゾーンを変更する
    Alpine Linux で timezone を変更する(最新版?)
    Docker の Alpine Linux でタイムゾーンを JST にする
    DockerのAlpine Linuxでタイムゾーンでハマった

ログローテート

   Logrotate - nginx logs not rotating inside docker container

   DockerfileでNginxの起動とログのローテーションまで

   logrotateプロセスをdocker化

   sequenceiq/logrotate

   hortonworks/docker-logrotate

   blacklabelops/logrotate

   dockerコンテナ内のnginxにログを開き直させる方法(logrotate)

   appengine-sidecars-docker/nginx_proxy/

   #73 docker-compose, nginx-proxy & ログローテート

   dockerコンテナ上のuwsgiとnginxのログローテート

   MySQL ログのローテーション設定(logrotate)(flush-logs が cron で動かないときの対処を含む)

   【Linux/MySQL】logrotateでmysqlのログファイルを簡単にローテーションする

   MySQL5.7.18のログローテートの設定

   mysql のログを logrotate を使ってローテーションさせる

   MySQLやMariaDBは標準ではログローテートされない

   MySQLログローテーション設定について

   Docker nginx logrotateの連携について

   logrotate - nginx、logging、docker、logrotateを使ったコンテナ化されたnginxログのローテーション

   Dockerコンテナのログをローテートする

   Dockerコンテナ上のアプリケーションのログのローテーション

   dockerのlog周りの対応

   nginx用のログローテートを手動で設定する(ログのreopenについて)

概要

   はじめての Docker

インストール

   Ubuntu 16.x に Docker & Docker Compose をインストールする

   CentOS7 に Docker & Docker Compose をインストールする

   CoreOSは、最初からDockerが入っている。ただし自動起動は無効なので有効にする必要あり

   
Docker

   dockerコマンドをcronで実行させたら「TTYが無いよ」と怒られた件

   docker run時にpwdコマンドを使って作業ディレクトリをマウントする

   Docker ComposeでDjangoの開発環境を構築した

   「Ubuntu」のdockerコンテナを起動させる方法

   docker psコマンドで特定のカラムの情報を取り出す方法

   Azure BatchとDockerで管理サーバレスバッチ環境を作る

   Docker 入門 Dockerの説明からhello-worldまで

   Docker入門日誌-その1- Hello World編

   Amazon Linux 2 でdockerを使ってみる (Apache2.4)

   Amazon Linux2にDockerをインストールする

   EC2+AmazonLinux2にdockerをセットアップする手順

   EC2(Amazon Linux2)にprivateなdocker registryの作るメモ

   AWSでDockerコンテナを起動してみた

   はじめてのDocker on EC2

   EC2にDockerをインストールしてNginxコンテナを作る

   コンテナで Hello world

   Docker入門 ~Hello World~

   centos7でproxyを設定する。 yum wget docker curl git npm

   Docker で IPアドレス を固定する方法

   プロキシ環境におけるdocker build

   Dockerコンテナを本番環境で使うためのセキュリティ設定
   
   Dockerは危険という誤解と、本当に注意すべき点
   
   Dockerセキュリティ: 今すく゛役に立つテクニックから,次世代技術まて゛
   
   Docker コンテナの設定不備を悪用し仮想通貨発掘マルウェアを拡散する攻撃を確認
   
   Dockerコンテナのセキュリティと仮想マシン対ベアメタルの議論
   
   Dockerコンテナにsshアクセスしたいけど忘れるのでコマンドをまとめとく
   
   Dockerコンテナ内で操作 attachとexecの違い
   
   Dockerコンテナの起動と停止、接続と抜け方を知ろう~attach/start/exitコマンド~
   
   Dockerのコンテナ間通信~アプリとDBを繋ぐ~
      
   コンテナに外部からアクセス(ポートフォワード)
   
   Docker: ホストOSーコンテナ間のポートフォワーディング
   
   Dockerのコンテナの中からホストOS上のプロセスと通信する方法
   
   Dockerのコンテナからホストにアクセスする方法
   
   DockerからホストOSへの通信
   
   Dockerコンテナからホスト側カレントディレクトリにアクセス
   
   Docker コンテナ内からホストの IP アドレスを知る
   
   docker-phpの環境構築メモ
   
   docker個人的メモ
   
   Docker コンテナからホストにアクセスする
   
   Dockerコンテナ内からホストOSにアクセスする    

   Dockerで開発環境・テスト環境を作る

   私のDocker TIPS

   Dockerコンテナの作成、起動〜停止まで

   Docker基本

   事例から考えるDockerの本番利用に必要なこと

   Docker swarmを試してみた

   dockerチートシート

   docker でよく使用したコマンドの覚え書き

   いまさら Docker やってみた

   docker runの--rmオプション(コンテナ終了時にコンテナ自動的に削除)べんりです

   docker run -v でホストとコンテナのディレクトリを共有する

phpMyAdmin

   phpMyAdmin on docker が便利すぎる

   docker-compose でMySQL環境簡単構築

   docker-compose で PHP7.2 + Apache + MySQL + phpMyAdmin 環境を構築

PlantUML

   Visual Studio Codeでプレビューを見ながらPlantUMLを書ける環境をDockerで作る

CloudMapper

   CloudMapperをDockerコンテナで実行したい

Swagger UI + Swagger Editor

   Swagger UI + Swagger Editorを使ってAPI仕様書作成を効率化する【Docker】

Dockerfile Linter

   Dockerfile Linter

   DockerfileをLintするにはhadolintが良さそう

   Dockerfileの静的解析ツールが便利すぎた

   DockerfileをLintする

   「hadolint」にシバかれながら美しいDockerfileを書き上げる

Docker WebUI

   Docker初心者でも安心!Portainerを使ってイメージやコンテナを管理する

Docker Registry

   ファイルを/etc/systemd/system/docker.service.d/下に設定ファイルを置く
   [Service]
   ExecStart=
   ExecStart=/usr/bin/docker daemon -H fd:// --insecure-registry=myreg.example.com:5000
   最近のUbuntu(15.04以降)でDockerの--insecure-registryの設定

   $ cat /etc/systemd/system/docker.service.d/50-insecure-registry.conf
   [Service]
   Environment=DOCKER_OPTS='--insecure-registry="10.0.1.0/24"'
   50-insecure-registry.conf
   
   # vi /etc/docker/daemon.json
   {
   "insecure-registries":
      [
         "docker.internal:5000"
      ]
   }
   Dockerのプライベートなレジストリをローカル環境に構築する

   Portus で素敵な Private Docker Registry を用意してみる

   Docker Registryをさくっと立てる

   privateなdockerレジストリを構築する

   How can I use the Docker Registry API V2 to delete an image from a private registry? 

   GoでDockerPrivateRegistryのイメージを削除したい

   WebUIから Docker Registry 2.0上のimageをDELETE

   Docker Registry APIでタグ情報を取得

   DockerのPrivate Registryをちょっとだけ使いやすくしてみる

   Docker Registryを構築する

   DockerのプライベートレジストリをWebUI(docker-registry-web)とともに使ってみる

   タグ付きのDockerイメージをプライベートレジストリから削除する

   Docker Registry v2 でプライベートリポジトリ(プライベートレジストリ)を立てる

Vuls

   脆弱性診断ツールVulsをDockerで運用する

   VulsをDockerで構築
   
   進化するVuls!稼働中のDockerコンテナの脆弱性を検知する

   Dockerでvulsを使った時の備忘録

   Docker用Vulsを使用した動作確認

   脆弱性検知ツール Vulsを試してみる

MariaDB

   Docker、k8s
   amilb/kube-mysqldump-cron

   Dockerで、すぐにDBを試せるdocker-compose.ymlを作ったよ

   MariaDB のコンテナ起動時に init.sql を流す

   RedmineのDockerコンテナとMySQLで日本語を使えるようにするまで

   docker composeでMySQLのデータ領域をローカルにマウントする

   pyama86/garela-cluster-docker

   MariaDB Galera Clusterを動かしてみた

   MySQL on Docker: Running a MariaDB Galera Cluster without Orchestration Tools - DB Container Management - Part 2

   docker-mariadb-utf8g

   DockerオフィシャルのMySQL(MariaDB)コンテナの挙動をDockerfile周辺から読み解く

   CoreOS/Docker で MariaDB Galera Cluster + MaxScale を動かす

   MySQL on Docker: Running a MariaDB Galera Cluster without Orchestration Tools - DB Container Management - Part 2

   MariaDB on Docker

   Using Docker for Fast and Easy Testing of MaxScale

   MariaDB Galera Clusterを動かしてみた

   DockerでMariaDBのコンテナを作成

   Dockerコンテナ上のMariaDBにコンテナ外部から接続する

   Docker公式イメージで開発用RDBをゲットだぜ(MariaDB、Percona Server編)

   【Docker】MariaDBのコンテナに初期データを投入する

   MariaDB MaxScale を CentOS 7 にインストール

   Kubernetes上でMariaDB Galera Clusterを試す

   Using Docker for Fast and Easy Testing of MaxScale

   kibatic/docker-mariadb-galera

   RightCtrl/MariaDB

   MaxScale で MySQL をロードバランスする

   Galera Cluster の書き込みノードはひとつに制限した方が良さそう

   MariaDB Galera Cluster - Known Limitations について調べた

   Galera Cluster の書き込みノードはひとつに制限した方が良さそう

   [翻訳] "Tips on Converting to Galera"(Galeraに移行する際のポイント)

   MariaDB Galera Cluster: SELECT … FOR UPDATE why no locking?

   Galera Cluster 導入チェックポイント

   docker-maxscale
   feelinc/docker-maxscale

   docker-compose、k8sなど
   MariaDB 10.1 Docker Image (Galera)

MySQL

   docker-compose でMySQL環境簡単構築

   docker上のmysqlのタームゾーン設定

   最速で日本語環境のMySQL Dockerコンテナを建てる方法

PostgreSQL

   Docker Hub 公式 PostgreSQL イメージを用いて、データベースクラスタ作成済みコンテナイメージを作成する

   dockerでpostgresqlを起動して遊ぶ

   Docker PostgreSQLイメージを利用する

   Docker 1.8.2でDockerfileからPostgreSQLのDockerイメージを生成しコンテナを起動

Redis

   redisをDockerコンテナで用意する

   Dockerを使ったRedisの導入

   docker-composeでredisを起動して接続する

   ささっとDockerでRedis環境を構築してPHP(predis)から接続する

   Dockerコンテナ内のUbuntuでRedisを使ってみよう!

   docker で redis-cluster を自動起動させる。ついでにPHP7で使う。

   eiskalteschatten/Redis-Sentinel-Docker-Compose

   docker + redis で Sentinel 環境を構築する

   Docker Swarm RedisおよびSentinelとマスター – スレーブ複製IP解決クライアントの障害

   Redis Cluster入門

その他

   Docker pull commit push Dockerfile WordPress環境をつくる

   PacemakerでDockerコンテナをクラスタリング

   Pacemakerでお手軽Dockerクラスタリング!

   docker-compose + リバースプロキシ + ロードバランシングの環境構築手順

   Dockerコンテナ上にnginxを構築する

   dockerとnginxでロードバランシング

   Dockerを使ってロードバランシング環境構築

   nginx-proxy(Docker)で設定なしリバースプロキシ

   nginx-proxy – docker-genを使用したDockerコンテナの自動nginxプロキシ

   DockerとKubernetesでのCassandraクラスタ作り

トップページへ戻る
Copyright© 2005- Naoyuki Sano. All rights reserved.