Dockerを利用してさっと検証環境構築

OS

# Amazon Linux AMI
$ docker run -it amazonlinux:2018.03.0.20180827 /bin/bash

# Amazon Linux2
$ docker run -it amazonlinux:2.0.20180827 /bin/bash

# CentOS6
$ docker run -it centos:centos6 /bin/bash

# CentOS7
$ docker run -it centos:centos7 /bin/bash

# Ubuntu
$ docker run -it ubuntu:18.04 /bin/bash

# Debian
$ docker run -it debian:latest /bin/bash

# openSUSE
$ docker run -it opensuse:leap /bin/bash

OSS

MySQL

# 5.6.41
$ docker run --name mysql5.6.41 -e MYSQL_ROOT_PASSWORD=password -d mysql:5.6.41
$ docker exec -it mysql5.6.41 mysql -u root -p

# 5.7.23
$ docker run --name mysql5.7.23 -e MYSQL_ROOT_PASSWORD=password -d mysql:5.7.23
$ docker exec -it mysql5.7.23 mysql -u root -p

IP アドレスでローカルの MySQL クライアントからアクセスする場合は、ip addr show コマンドの実行結果で inet が IPv4 の utun デバイスの IP アドレスを確認(ここでは、10.85.11.170)

$ mysql -h 10.85.11.170 -u root -p

PostgreSQL

$ docker run --name postgres9.6 -p 5432:5432 -e POSTGRES_USER=hayashier -e POSTGRES_PASSWORD=password -d postgres:9.6
$ docker exec -it postgres9.6 psql -U hayashier

Nginx

$ docker run -p 80:80 --name webserver nginx

動作確認

$ curl localhost

Apache

$ docker run -p 80:80 --name webserver httpd

動作確認

$ curl localhost

Squid

$ docker run -p 3128:3128 --name squid poklet/squid

動作確認

$ curl --proxy http://localhost:3128 -vo /dev/null https://hayashier.com

$ docker exec -it squid /bin/bash

OpenLDAP

$ docker run --name ldap-service --hostname ldap-service --detach osixia/openldap
$ docker run --name phpldapadmin-service -p 6443:443 --hostname phpldapadmin-service --link ldap-service:ldap-host --env PHPLDAPADMIN_LDAP_HOSTS=ldap-host --detach osixia/phpldapadmin

動作確認

ブラウザで https://localhost:6443/ へアクセス。 Login DN: cn=admin,dc=example,dc=org , Password: admin

$ docker exec -it ldap-service /bin/bash
# ldapsearch -x -H ldap://localhost -b dc=example,dc=org -D "cn=admin,dc=example,dc=org" -w admin

Dockerイメージ掃除

プロセスが終了していることを確認した上で、イメージの削除を行う。

# Docker プロセス確認
$ docker ps

# Docker プロセス終了
$ docker kill <CONTAINER ID 1> <CONTAINER ID 2> ...

一括で消せない場合は、docker ps/images で対象の ID を確認しながら、docker rm/rmi

# コンテナ一括削除
$ docker ps -aq | xargs docker rm

# イメージ一括削除
$ docker images -aq | xargs docker rmi

参考

  • library/amazonlinux - Docker Hub https://hub.docker.com/_/amazonlinux/
  • centos - Docker Hub https://hub.docker.com/_/centos/
  • ubuntu - Docker Hub https://hub.docker.com/_/ubuntu/
  • debian - Docker Hub https://hub.docker.com/_/debian/
  • opensuse - Docker Hub https://hub.docker.com/r/opensuse/leap/
  • mysql/mysql-server https://hub.docker.com/r/mysql/mysql-server/
  • postgres https://hub.docker.com/_/postgres/

My Twitter & RSS

Leave a Reply

Your email address will not be published. Required fields are marked *