日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Docker(三):部署软件

發(fā)布時間:2023/12/20 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Docker(三):部署软件 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

Docker的鏡像文件可以在鏡像倉庫中進行搜索。

部署軟件目錄導(dǎo)航:

  • 常用命令
  • 部署 Tomcat
  • 部署 MySQL
  • 部署 Oracle

常用命令

docker的常用命令如下:

  • docker -v , --version : 輸出當前docker的版本信息。
  • docker images : 查看鏡像,-a 表示查看所有 ,-q 只顯示鏡像ID。
  • docker ps : 查看所有運行中的容器列表,-a 表示查看所有(包括已退出的容器),-q 只顯示ID,-s顯示文件大小。
  • docker pull : 從鏡像倉庫下載鏡像,默認的鏡像倉庫地址:(https://hub.docker.com),可以直接下載鏡像倉庫中有的鏡像文件,默認下載latest版本,也使用:tag指定下載哪個版本。
  • docker rm: 刪除容器,后面帶指定容器的ID,即可刪除對應(yīng)的容器。
  • docker rmi: 刪除獎項文件,后面可以是鏡像文件的名稱或則ID,都可刪除鏡像文件。
  • docker run: 啟動鏡像并創(chuàng)建一個新容器實例,-a 可以添加STDIN、STDOUT或STDERR,-d 表示容器在后臺執(zhí)行(比較常用),-e 可以設(shè)置環(huán)境變量,-m 可以設(shè)置內(nèi)存大小, -p 可以將系統(tǒng)端口指向容器端口,使其可以在容器外進行訪問,(例如 -p 80:8080 可以將系統(tǒng)的80端口與容器的8080端口綁定。則容器外可以對80端口訪問到容器的8080端口,比較常用), -v 可以將宿主的文件掛載到容器上,如 -v /test:/soft? 將會把宿主的 /test 目錄掛載到容器的 /soft目錄下,如果test目錄不存在則會新建一個test目錄。
  • docker stop: 停止容器的運行。
  • docker logs: 顯示容器的日志信息,-f 跟蹤容器實施日志信息,-t 顯示日志的時間信息。?
  • docker search: 在Docker Hub 中搜索鏡像文件。

具體的執(zhí)行命令,還可以去參考鏡像倉庫對應(yīng)鏡像的詳細介紹。

部署 Tomcat

下載Tomcat鏡像文件,如下命令會下載latest版本的tomcat。

[root@localhost ~]# docker pull tomcat

下載完成后可以使用 docker images 查看下載后的鏡像文件信息。

[root@localhost ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE docker.io/tomcat latest df50c9d355cf 6 days ago 463 MB

啟動tomcat程序,如下命令會在后臺執(zhí)行tomcat。并將tomcat默認的8080端口指向系統(tǒng)的8080端口。

[root@localhost ~]# docker run -d -p 8080:8080 tomcat

如果想打開多個Tomcat則直接,如上一樣的名并將8080端口改為8081則,兩個tomcat互不干擾,可同時存在。

docker run -d -p 8081:8080 tomcat

使用docker ps 查看正在運行的程序

[root@localhost ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 9d64f362c40a tomcat "catalina.sh run" 8 seconds ago Up 7 seconds 0.0.0.0:8081->8080/tcp gracious_bohr 39d01b39e8d3 tomcat "catalina.sh run" 4 minutes ago Up 4 minutes 0.0.0.0:8080->8080/tcp wizardly_davinci

其中有兩個Tomcat程序。如下訪問結(jié)果:

? ? ? ? ?

?

部署 MySQL

下載最新版Mysql。

[root@localhost ~]# docker pull mysql

查看鏡像是否下載成功。

[root@localhost ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE docker.io/tomcat latest df50c9d355cf 6 days ago 463 MB docker.io/mysql latest 8d99edb9fd40 6 days ago 445 MB

啟動鏡像文件,執(zhí)行如下命令,會在后臺啟動mysql,暴露3306端口,并命名為 my-mysql 且設(shè)置root密碼為123456。

[root@localhost ~]# docker run -p 3306:3306 --name my-mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql

執(zhí)行如下命令可以進入mysql 的 client。第一條 docker exec -it my-mysql bash。 可以進入到mysql的bash shell界面,然后執(zhí)行 mysql -uroot -p是輸入密碼即可進入到mysql client。

[root@localhost ~]# docker exec -it my-mysql bash root@f3f79ca4eae1:/# mysql -uroot -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 35 Server version: 8.0.11 MySQL Community Server - GPLCopyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql>

可以通過日志看到安裝的 mysql 版本是 8.0.11。這個版本使用navicat連接時,會報如下錯誤:

執(zhí)行select host, user, authentication_string, plugin from user;命令可以查詢

  • host : 允許用戶登錄的IP,%表示可遠程登錄。
  • user : 當前數(shù)據(jù)庫的用戶名。
  • authentication_string: 用戶的密碼。
  • plugin : 密碼的加密方式。

導(dǎo)致如上問題就是因為 'root'@'%' 的密碼加密方式 使用的是 caching_sha2_password。我們需要修改它的加密方式。

mysql> select host, user, authentication_string, plugin from user; +-----------+------------------+------------------------------------------------------------------------+-----------------------+ | host | user | authentication_string | plugin | +-----------+------------------+------------------------------------------------------------------------+-----------------------+ | % | root | $A$005$bx9?Rgb:Y0&7q7:;Ef8isqjh0JQzsp6bJXk4eL/ibgbXx8zwdntsl0qxGA8 | caching_sha2_password | | localhost | mysql.infoschema | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | | localhost | mysql.session | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | | localhost | mysql.sys | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | | localhost | root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | mysql_native_password | +-----------+------------------+------------------------------------------------------------------------+-----------------------+ 5 rows in set (0.00 sec)

執(zhí)行如下命令進行修改加密方式。

mysql> ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456'; Query OK, 0 rows affected (0.09 sec)mysql> select host, user, authentication_string, plugin from user; +-----------+------------------+-------------------------------------------+-----------------------+ | host | user | authentication_string | plugin | +-----------+------------------+-------------------------------------------+-----------------------+ | % | root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | mysql_native_password | | localhost | mysql.infoschema | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | | localhost | mysql.session | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | | localhost | mysql.sys | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | | localhost | root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | mysql_native_password | +-----------+------------------+-------------------------------------------+-----------------------+ 5 rows in set (0.00 sec)

執(zhí)行完畢后查看加密方式已修改,現(xiàn)使用navicat連接測試如下。

部署 Oracle

第一步還是下載Oracle數(shù)據(jù)庫鏡像倉庫搜索的oracle 11g 可以找到 wnameless/oracle-xe-11g 鏡像文件。

[root@localhost ~]# docker pull wnameless/oracle-xe-11g

查看下載后的鏡像文件有2.13GB,比較大。

[root@localhost ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE docker.io/tomcat latest df50c9d355cf 6 days ago 463 MB docker.io/mysql latest 8d99edb9fd40 7 days ago 445 MB docker.io/wnameless/oracle-xe-11g latest 698cc7361de4 5 weeks ago 2.13 GB

啟動命令如下:

[root@localhost ~]# docker run --name oracle -d -p 1521:1521 -e ORACLE_ALLOW_REMOTE=true wnameless/oracle-xe-11g

默認用戶信息如下:

hostname: localhost port: 1521 sid: xe username: system password: oracle
SYS&SYSTEM的密碼 oracle

測試效果如下:

?

轉(zhuǎn)載于:https://www.cnblogs.com/peter1018/p/9259454.html

總結(jié)

以上是生活随笔為你收集整理的Docker(三):部署软件的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。