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.