dockerのインストールは、他のブログdockerブログリンクに移動できます。
mysqlをインストールします
ミラーを引っ張るバージョンを決定します
docker pull mysql:5.7.36
mysqlサービスを開始します
mysqlサービスを開始し、バックグラウンドで実行し、rootユーザーのパスワードを指定し、コンテナー名を指定します
docker run --name mysql5.7 -e MYSQL_ROOT_PASSWORD=123456 -d -p 3306:3306 mysql:5.7.36
- --nameコンテナ名
- -e MYSQL_ROOT_PASSWORD =xxxrootユーザーのパスワードを指定します
- -dバックグラウンドで実行
- -pホストポート:コンテナポート
上記の実行コマンドはデータボリュームを使用せず、データをホストシステムに保持します
mysql+データボリュームの永続性を開始します
mysqlサービスを開始し、バックグラウンドで実行し、rootユーザーのパスワードを指定し、コンテナー名を指定し、データボリュームを使用してデータをホストシステムに永続化します
注:dockerhubの説明によると、mysqlストレージファイルディレクトリは、このディレクトリ/ var / lib/mysqlのコンテナに配置されていることがわかっています。
docker run --name mysql5.7 -e MYSQL_ROOT_PASSWORD=123456 -d -p 3306:3306 -v mysqldata:/var/lib/mysql mysql:5.7.36
mysql構成を変更します
必要に応じてmysql構成ファイルを変更する場合は、対応するディレクトリを一緒にマウントすることもできます。
docker run --name mysql5.7 -e MYSQL_ROOT_PASSWORD=123456 -d -p 3306:3306 -v mysqldata:/var/lib/mysql -v mysqlconfig:/etc/mysql/conf.d -v mysqllog:/var/log/mysql mysql:5.7.36
docker exec -it 容器id bash
mysql -u root -p123456
SHOW VARIABLES LIKE 'character%';
文字セットが中国語に正しく挿入されていない場合、問題が発生します
データボリュームを介してデータベース構成を変更する
cd /var/lib/docker/volumes/mysqlconfig/_data
vim my.cnf
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve
必ずコンテナを再起動してください
tomcatをインストールします
画像をプル
docker pull tomcat:9.0-jdk8-corretto
基本的なTomcatサービスを開始します
docker run -d -p 8080:8080 --name tomcat tomcat:9.0-jdk8-corretto
- --nameコンテナ名
- -dバックグラウンドで実行
- -pホストポート:コンテナポート
IPアドレスによるアクセス検出
webappsディレクトリが空であることがわかります。
変更後、Tomcatページに再度アクセスする
か、ボスの画像を直接プルすることができます。
画像をプル
docker pull tomcat:8.0.52-jre8
走る
docker run -d -p 8080:8080 --name tomcat tomcat:8.0.52-jre8
データボリュームを介した自動マウント
Webアプリケーションがコンテナーにデプロイされるディレクトリーは/usr/ local / tomcat / webappsであり、構成ファイルは/ usr / local / tomcat/confであることに注意してください。
docker run -d -p 8080:8080 --name tomcat -v apps:/usr/local/tomcat/webapps tomcat:8.0.52-jre8
データボリュームに対応するディレクトリにフォルダを作成し、index.htmlを書き込み、ip :: 8080 / emp/index.htmlにアクセスします。
構成ファイルディレクトリをマウントします
docker run -d -p 8080:8080 --name tomcat -v apps:/usr/local/tomcat/webapps -v confs:/usr/local/tomcat/conf tomcat:8.0.52-jre8
構成情報(ポートなど)がすぐに有効にならない場合は、有効にするデータボリュームを使用して新しいコンテナーを作成する必要がある場合があります。
tomcat9を手動でマウントし、実行します
# -v表示挂载,前面的目录为宿主机目录结构,后面的目录为容器中的目录结构
docker run --name tomcat -p 8080:8080
-v /usr/local/tomcat/webapps:/usr/local/tomcat/webapps
-v /usr/local/tomcat/conf:/usr/local/tomcat/conf -d tomcat:9.0-jdk8-corretto
ここでは、別のTomcatコンテナーを開始してから、server.xmlファイルをコンテナーからmountconfフォルダーにコピーします。
docker run --name tomcat1 -p 8080:8080 -d tomcat:9.0-jdk8-corretto
docker exec -it ad37af bash
コピーコマンド
docker cp tomcat1:/usr/local/tomcat/conf/ /usr/local/tomcat/
Tomcatを再起動します
docker start tomcat
9バージョンのtomcatwebappsは空であるため、アクセスするにはwebapps.distをコピーする必要があります
cd webapps.dist/
cp -r ./* ../webapps
成功へのアクセス
redisをインストールする
画像をプル
docker pull redis:6.2.5
コンテナを自動的にマウントして実行します
docker run -p 6379:6379 --name redis --privileged=true -v redisconfig:/etc/redis -v redisdata:/data -d redis:6.2.5 redis-server /etc/redis/redis.conf
構成ファイルをコピーします
cp ./redis.conf /var/lib/docker/volumes/redisconfig/_data
注意:daemonize yesを構成しないでください。
構成しないと、コンテナーを開始できません。開始直後に停止してください。
手動マウントの取り付け手順
mkdir -p /mydata/redis/conf
touch /mydata/redis/conf/redis.conf
新しく作成したredis/confに次の内容の新しいファイルredis.confを作成します。
#bind 127.0.0.1 //允许远程连接
protected-mode no
appendonly yes //持久化
requirepass 123456 //密码
起動
docker run -p 6379:6379 --name redis -v /mydata/redis/data:/data \
-v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf \
-d redis redis-server /etc/redis/redis.conf