Docker centos7內部容器安裝Mysql8和Tomcat應用

安裝docker

 yum install epel-release -y
    yum install docker-io

    #Docker使用
        service docker start
        #刪除docker 容器
            sudo docker ps -a 
            #獲取最后字段的NAME
                sudo docker rm NAME

                #刪除退出狀態的容器
                  docker rm $(docker container ls -f "status=exited" -q)
                #刪除所有狀態的容器
                 docker rm $(docker ps -aq)

docker運行centos

docker pull centos

docker images

##暴露centos服務ssh端口 和tomcat端口 以及mysql端口

docker run --privileged  -ti -d -p 2212:22 -p 8088:8080 -p 53306:3306 49f7960eb7e4 /usr/sbin/init

##進入centos容器
 docker exec -it ddca2ba997701f30  /bin/bash

##修改root密碼
passwd root

###安裝ssh并開啟端口22
yum -y install openssh-server openssh-clients net-tools java maven git vim wget initscripts
systemctl start sshd.service
netstat -tuanp  (查看是否暴露22端口)

容器IP端口綁定

1、獲得容器IP
將container_name 換成實際環境中的容器名 
docker inspect 容器名稱 | grep IPAddress
2、 iptable轉發端口
將容器的8000端口映射到docker主機的8001端口 
sudo iptables -t nat -A  DOCKER -p tcp --dport 8000 -j DNAT --to-destination 172.17.0.2:8001

centos安裝mysql8

卸載已有mysql

*   rpm -qa | grep -i mysql
*   yum -y remove  卸載上面查出的
*   find / -name mysql 刪除mysql文件
*   rm -rf /etc/my.cnf 刪除配置文件
*   rpm -qa|grep -i mysql 是否有殘留

2. 下載安裝rpm

*   wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
*   rpm -ivh mysql80-community-release-el7-3.noarch.rpm
*  yum install mysql-community-server
*   service mysqld start

*   service mysqld status
● mysqld.service - MySQL Server
   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
   Active: active (running) since Sun 2018-06-03 18:31:51 CST; 6min ago
     Docs: man:mysqld(8)
           http://dev.mysql.com/doc/refman/en/using-systemd.html
  Process: 5281 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
 Main PID: 5299 (mysqld)
   Status: "SERVER_OPERATING"
   CGroup: /system.slice/mysqld.service
           └─5299 /usr/sbin/mysqld

Jun 03 18:31:50 {your-server-name} systemd[1]: Starting MySQL Server...
Jun 03 18:31:51 {your-server-name} systemd[1]: Started MySQL Server.

3. 重設密碼

*   sudo grep 'temporary password' /var/log/mysqld.log 查看臨時隨機密碼
*   mysql -uroot -p 
*   set global validate_password.mixed_case_count=2;
*   set global validate_password.length=1;
*   set global validate_password.policy=0;
*   set global validate_password.policy=LOW;
*   ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密碼';

4. 創建新賬號并賦予全部權限

*   use mysql;
*   CREATE USER 'cheer'@'%' IDENTIFIED BY 'cheerrrr';
*   GRANT ALL PRIVILEGES ON *.* TO 'cheer'@'%' WITH GRANT OPTION;
*   ALTER USER 'cheer'@'%' IDENTIFIED BY 'cheerrrr' PASSWORD EXPIRE NEVER;
*   ALTER USER 'cheer'@'%' IDENTIFIED WITH mysql_native_password BY 'cheerrrr';
*   FLUSH PRIVILEGES;
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容