Dockerインストールtomcat、redis、mysql 8.0

4707 ワード

一、CentOS 7インストールDocker
1、カーネルバージョンを検査し、3.10以上でなければならない
[root@iz2zeizzt8ihoeoyopzzyhz ~]# uname -r
3.10.0-514.26.2.el7.x86_64

2、yum install dockerでインストールする
[root@iz2zeizzt8ihoeoyopzzyhz ~]#yum install docker

ダウンロード確認後にCompleteが表示されます!成功を表す
3、dockerを起動する
[root@iz2zeizzt8ihoeoyopzzyhz ~]# systemctl start docker

4、dockerバージョンの表示
[root@iz2zeizzt8ihoeoyopzzyhz ~]# docker -v
Docker version 1.13.1, build 94f4240/1.13.1

5、電源を入れてdockerを起動する
[root@iz2zeizzt8ihoeoyopzzyhz ~]# systemctl enable docker
Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service.

二、Docker tomcatをインストールしてwar工事を配置する
1、tomcatミラーを引き出す
可以在https://hub.docker.com/r/library/tomcat/検索を実行します(バージョンのデフォルトインストールの最新版は指定しません)
2、tomcatのインストール
[root@iz2zeizzt8ihoeoyopzzyhz ~]# docker pull tomcat

3、すべてのミラーを表示する
[root@iz2zeizzt8ihoeoyopzzyhz ~]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
docker.io/tomcat    latest              56219f61066f        51 minutes ago      463 MB

4、tomcatを起動する
[root@iz2zeizzt8ihoeoyopzzyhz ~]# docker run --name tomcat8080 -d -p 8080:8080 tomcat 
a3d4f36dca9865619b48c325c06f5147c92230e369051a60e82fb461eb6f1e20

--name:コンテナに名前を付ける
-d:バックグラウンド運転
-p:ポートマッピング
5、運転中のtomcatの表示
[root@iz2zeizzt8ihoeoyopzzyhz ~]# docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                    NAMES
a3d4f36dca98        tomcat              "catalina.sh run"   5 seconds ago       Up 4 seconds        0.0.0.0:8080->8080/tcp   tomcat8080

次に、ブラウザでip:8080を入力してデフォルトのtomcatインタフェースにアクセスします.
6、war工事の配置
まずwarパッケージをサーバにアップロードします.例えば、/homeパスにアップロードします.
[root@iz2zeizzt8ihoeoyopzzyhz ~]# ll
total 212532
-rw-r--r-- 1 root root  17231526 Nov 22  2017 admin-controller.war

7、warパッケージをdocker容器のtomcatにコピーする
以下の2つのブログを参照してください.
https://blog.csdn.net/qq_32351227/article/details/78673591
https://blog.csdn.net/leafage_m/article/details/72082011
具体的な私の操作は以下の通りです.
長いIDを取得(tomcat 8080は私が起動したtomcatの名前です)
[root@iz2zeizzt8ihoeoyopzzyhz ~]# docker inspect -f '{{.Id}}' tomcat8080
a3d4f36dca9865619b48c325c06f5147c92230e369051a60e82fb461eb6f1e20

コンテナ内のtomcatアドレスの表示(a 3 d 4 f 36 dca 98はtomcatのid)
[root@iz2zeizzt8ihoeoyopzzyhz ~]# docker  exec -it  a3d4f36dca98   /bin/bash
root@a3d4f36dca98:/usr/local/tomcat# 

tomcatのwebappsの下のデフォルトファイルをすべて削除します
root@a3d4f36dca98:/usr/local/tomcat# cd webapps/
root@a3d4f36dca98:/usr/local/tomcat/webapps# 
root@a3d4f36dca98:/usr/local/tomcat/webapps# ls
ROOT  docs  examples  host-manager  manager   ----       
root@a3d4f36dca98:/usr/local/tomcat/webapps# 

warパッケージcpをtomcatのwebappsパスの下に入れる(docker cpローカルファイルパスID全称:コンテナパス)
[root@iz2zeizzt8ihoeoyopzzyhz ~]# docker cp admin-controller.war a3d4f36dca9865619b48c325c06f5147c92230e369051a60e82fb461eb6f1e20:/usr/local/tomcat/webapps/admin-controller.war

restartでは導入されたプロジェクトにアクセスできます
三、Dockerインストールredis
1、redisミラーを引く(Docker中国のミラーを使って加速することを推奨する)
[root@iz2zeizzt8ihoeoyopzzyhz ~]# docker pull registry.docker-cn.com/library/redis

2.redisの起動
[root@iz2zeizzt8ihoeoyopzzyhz ~]# docker run -d -p 6379:6379 --name redis6379 bfcb1f6df2db

RedisクライアントツールRedisDesktopManagementを使用してローカルで操作できます.
四、Dockerインストールmysql 8
1、mysqlミラーを引く
[root@iz2zeizzt8ihoeoyopzzyhz ~]# docker pull mysql

2.mysqlを起動する
[root@iz2zeizzt8ihoeoyopzzyhz ~]# docker run -p 3309:3306 --name mysql3309 -e MYSQL_ROOT_PASSWORD=root -d mysql --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci

クライアントに接続すると問題が発生します:ローカルに接続できません
解決:
#Docker-mysql8.0       
 
    bash   mysql   
docker exec -it mysql3306 bash
root@eb3dbfb0958f:/# mysql -uroot -p  
Enter password:   
Welcome to the MySQL monitor.  Commands end with ; or \g.  
…   
mysql>
//  mysql   
mysql>use mysql
   
//     
mysql> ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';
 
//            
mysql> alter  user 'root'@'%' identified by 'root';
 
//     
mysql> flush privileges;

そしてローカルで接続に成功しました.