Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

docker メモ

More than 1 year has passed since last update.

イメージからコンテナを作成してシェルを起動して入る

オプション -i (--interactive) および -t (--tty) を付与して起動するのがポイント

オプション 内容
-i, --interactive コンテナの STDIN にアタッチ。コンテナの標準入力を開く。/bin/bashなどでコンテナーを操作する際に指定
-t, --tty 疑似ターミナル (pseudo-TTY) を割り当て。ttyを確保。/bin/bashなどでコンテナを操作する際に指定。
-d バックグラウンドで実行。WebやAPサーバなど常時実行するコンテナーで指定
--name {コンテナ名}

{イメージ名}:{タグ名}
コンテナで実行するコマンド

docker run の最後のコマンドはコンテナを起動して最初に動かすコマンド

$ docker run -t -i --name centos_test centos /bin/bash
$ docker ps

CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
83414f6cd2d2        centos              "/bin/bash"         24 seconds ago      Up 25 seconds                           centos_test

$ docker attach 83414f6cd2d2

centos7 で ssh

# yum list installed | grep ssh

open-sshがインストールされているか確認

なかったら下記コマンドでインストール

# yum -y install openssh-server
# vim /etc/ssh/sshd_config
項目 説明
Port SSH接続を受け付けるポート番号。
※今回はデフォルト値を使用するので#でコメントアウト!
PermitRootLogin rootユーザーでのログインを許可するか否か。
※今回は"no"を指定してね!
PasswordAuthentication パスワード認証を許可するか否か。
※今回は"yes"を指定してね!
# systemctl start sshd.service
Failed to get D-Bus connection: Operation not permitted

ここでこける

--privilegedを付けて、コンテナを立ち上げてから入ることでsystemctlが使えるように

$ docker run --privileged --name centos_test -d centos /sbin/init
$ docker exec -ti centos_test bash
# yum list installed | grep ssh
# yum -y install openssh-server
# vi /etc/ssh/sshd_config
# systemctl start sshd.service
# systemctl status sshd.service
# yum install firewalld
# systemctl start firewalld
# systemctl enable firewalld
# systemctl status firewalld
# firewall-cmd --list-all
# firewall-cmd --permanent --add-service=ssh
# useradd testuser
# passwd testuser

コンテナのIPアドレスを取得

$ docker inspect --format '{{ .NetworkSettings.IPAddress }}' centos_test

centos_test: コンテナIDも可

tabelog
お店選びで失敗したくない人のためのグルメサイト「食べログ」を開発しています
https://tabelog.com
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away