もう一度centos 7でtomcat、jdk、nginx、redis、dockerをインストールし、それぞれの自己起動を構成します.


注意:以下のすべての構成は、外部アクセスが必要な場合は、ファイアウォールを使用して対応するポートを開く必要があります.ポートを開くコマンドは次のとおりです.
firewall-cmd--zone=public--add-port=***/tcp--permanent(***はポート)
ファイアウォールを再起動します
1、jdkの注意事項
1)jdkを持参しているかどうかを確認する
JAva-version:ある場合は削除、ない場合は2)ステップ
Javaファイルの表示:rpm-qa|grep java
削除を行う:rpm-e--nodeps****(***は上で調べたファイル名)(注:noarchファイルは削除しなくてもよい)
2)jdkをインストールした後、環境変数プロファイル:vim/etc/profileを編集し、javaの環境変数を以下のように追加します.
export JAVA_HOME=/usr/local/jdk/jdk1.8.0_201
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin

3)環境変数ファイルを直ちに有効にする
source/etc/profile
インストールに成功したかどうかを確認します:java-version
2、dockerをインストール(前の記事参照)した後、dockerにmysqlだけをインストールすればよい(mysqlはcentos 7で有料だそうなのでdockerに入れておきます)
1)pullのdocker.io/mysql:5.6バージョンで、mysqlのファイルマウント用の3つの/data/mysql/conf、/data/mysql/logs/フォルダを作成し、mysqlのファイルマウント用に次のコマンドを実行します.
docker run --privileged=true -p 3306:3306 --name mysql57-1 -v/data/mysql/data/:/var/lib/mysql -v/data/mysql/conf/:/etc/mysql/conf.d -v/data/mysql/logs/:/logs -e MYSQL_ROOT_PASSWORD=12345678 -d mysql:5.7
--privileged=true:これに加えて最も安全で、前にこれを付けないで、運行が成功しないで、logの中で権限がないことを表示します
3、redisをインストールした後
1)redis.conf,redis-server,redis-cliを新しいredisファイルにコピーし,redisを変更する.confファイルの以下のパラメータ:bind 127.0.0.1を注釈する
protected-modeをnoに変更します.そうしないと外部に接続できません.
daemonizeをyesに変更し、バックグラウンドで実行
またdumpファイルのディレクトリを変更しました:dir/usr/local/redis/redis/dump/
2)コピーしたredisを使用する.confファイルが起動し、上の修正もファイルを変更します.
4、tomcatをインストールして、言うことがなくて、最も簡単な1つを計算するべきで、配置する必要もありません
5、nginxをインストールした後
1)nginxの操作は(sbinディレクトリの下に):
./nginx:nginxを起動する
./nginx-s stop:nginxを停止
./nginx-s reopen:nginxを再起動
2)nginxのリバースエージェントを使用する場合は、SwitchHostsソフトウェアを使用してドメイン名マッピングを変更できます(このドメイン名は任意に定義できますが、インターネットで使用されているものを定義しないでください.このドメイン名はローカルで解析するしかありません).例えば、192.168.*.**www.123xx.comはドメイン名とローカルipマッピングを実現し、マッピング後、ドメイン名:8080を使用してtomcatにアクセスできます.
3)ドメイン名を使用してtomcatに直接アクセスするにはnginxの逆エージェントを使用する必要があります.
6、以上のすべてのサービスを起動に設定する
1)dockerが起動するように設定:systemctl eable docker.service
2)dockerのコンテナを起動に設定する:docker update--restart=always***(コンテナid)
3)/usr/lib/systemd/system/system/このディレクトリへ
4)my-nginxを追加する.サービスファイル、内容は以下の通りです.
[Unit]
Description=nginx
After=network.target #         
[Service]
Type=simple
PIDFile=/usr/local/nginx/logs/nginx.pid #    ,    
ExecStart=/usr/local/nginx/sbin/nginx  #    
ExecStop=/usr/local/nginx/sbin/nginx -s stop #    
ExecReload= /usr/local/nginx/sbin/nginx -s reload #  
PrivateTmp=true
[Install]
WantedBy=multi-user.target #     ,       

①nginxが実行する場合:systemctl restart my-nginx.service
②成功したら、構成に問題がないことを説明してから実行する:systemctl enable my-nginx.サービスningxを起動中に追加します
③もし①が失敗した場合、システムctl status my-nginx.サービス失敗原因の表示
④①の場合、サービスが実行されていない場合は、システムctl start my-nginx.サービスでOK
5)my-redisを追加する.サービス、内容は以下の通りです.
[Unit]
Description=redis
After=syslog.terget
After=network.target
[Service]
Type=simple
PIDFile=/var/run/redis_6379.pid
ExecStart=/usr/local/redis/redis/redis-server /usr/local/redis/redis/redis.conf #                   
ExecStop=/usr/local/redis/redis/redis-cli shutdown
Restart=always
[Install]
WantedBy=multi-user.target

以降同4)
6)my-tomcatを追加する.service
[Unit]
Description=tomcat
After=docker.service
After=syslog.target network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
#          PIDFile,          
ExecStart=/usr/local/tomcat/apache-tomcat-7.0.57/bin/startup.sh
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target

またtomcatのbinディレクトリの下にあるsetclasspathも必要らしい.shとcatalina.shファイルに次のコードを追加します.
export JAVA_HOME="/usr/local/jdk/jdk1.8.0_201"

後続命令同上
最後にreboot仮想マシンを再起動して成功したかどうかを試します