【玩轉Docker容器 2】基於Docker一分鐘搭建完 Jdk、Mysql、Nginx、Redis、Tomcat環境


推薦個人Docker文章,講的非常詳細

【玩轉Docker容器 1】Dockerd的詳解及安裝
【玩轉Docker容器 2】基於Docker一分鐘搭建完 Jdk、Mysql、Nginx、Redis、Tomcat環境
【玩轉Docker容器 3】基於Docker部署SpringBoot項目
【玩轉Docker容器 4】基於Docker搭建Docker私服,以及如何使用Docker私服詳解
【玩轉Docker容器 5】基於Docker搭建Maven私服,以及項目如何使用Maven私服詳解
【玩轉Docker容器 6】基於Docker構建GitLab管理代碼
【玩轉Docker容器 7】基於Docker安裝Jenkins實現自動化構建、部署、測試、監控項目

使用Docker安裝環境有什麼好處

1.如果配置鏡像加速器,Docker安裝環境非常的快
2.mysql、tomcat、nginx、jdk、redis、MQ、Git Lab、Node等等等等都是秒安裝級別
3.詳細的配置就不行了,這些就需要自己去弄,但是可以配置好了自己打包成鏡像,下次接着使用


1.配置鏡像加速器

在國內,阿里雲、163都提供了docker倉庫,但是阿里雲還提供了加速功能。所以,我們選用阿里雲的加速。163的倉庫地址:http://c.163.com/hub#/m/home,使用阿里雲,需要到阿里雲進行註冊,獲取到自己專屬的加速地址。

不配置鏡像加速器的話,網絡非常慢,最快只有100-200k的速度
配置阿里雲的加速器,速度可達幾十M以上,所以有什麼理由不配置

1.打開阿里雲網站

http://www.aliyun.com/
在這裏插入圖片描述

2.進行登錄,找到容器鏡像控制檯

如果沒有賬號就先註冊個賬號,登錄成功後右上角找到控制檯,
控制檯頁面找到左上角的產品與服務–>搜索容器–>找到下面的容器服務
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

有可能會出現,在下圖中選擇”前往RAM進行授權”,之後在彈出界面中往下拉點擊”同意授權”。
如果沒有

找到左下角鏡像,選擇右上角容器鏡像控制檯
在這裏插入圖片描述

再到左下角找到鏡像加速器,在點擊CentOS.
在這裏插入圖片描述

3.配置Linux鏡像加速器

在上圖中指出了使用加載器的方法。我們把下面的代碼全選到Xshell工具中進行回車。
注意,這裏分爲四條命令,
在這裏插入圖片描述

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://jrvh6o0l.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

在這裏插入圖片描述


2.使用Docker安裝Jdk8

1.搜索鏡像
docker search java

docker search 命令搜索存放在 Docker Hub(這是docker官方提供的存放所有docker鏡像軟件的地方,類似maven的中央倉庫)中的鏡像。執行該命令後, Docker就會在Docker Hub中搜索含有 java這個關鍵詞的鏡像倉庫。
在這裏插入圖片描述
linux中查詢出來的其實就是和Docker Hub官網去查詢顯示出來的一樣,
Docker Hub 官網:https://hub.docker.com/
在這裏插入圖片描述

2.下載鏡像
docker pull java:8

此命令會從Docker Registry上下載鏡像,docker pull java:8是指定了版本號下載jdk,如果不加:8的話,默認就是下載最新版
在這裏插入圖片描述
此時就可以列出容器 查看jdk8鏡像是否下載成功了

docker images

在這裏插入圖片描述

3.啓動容器
docker run -d -it --name java java
#其中,–name後面的“java”是爲容器指定了一個別名,而最後的那個“java”指的是下載鏡像的名稱。

在這裏插入圖片描述
這就是啓動成功了,輸入docker ps看看
(docker ps,查看當前運行容器)
(docker ps -a,查看所有容器,包括不在運行的容器)

docker ps

在這裏插入圖片描述
發現我們有個名稱爲java的容器正在運行,到這就已經完成了。
成功


3.使用Docker安裝Mysql

1.查找Mysql
docker search mysql

在這裏插入圖片描述

2.下載MySQL5.7版本鏡像
docker pull mysql:5.7

在這裏插入圖片描述

3.創建mysql容器

這裏的啓動mysql,還映射了Linux與Docker容器的端口號,並且指定mysql root用戶登錄密碼,

啓動mysql
docker run -p 3303:3306 --name mysql3303 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7

在這裏插入圖片描述
爲什麼要映射端口號呢?
因爲Docker容器和Linux系統的端口一個在內一個在外,所以要映射到外部Linux系統的端口上,如果不映射就只能在容器中使用

-p 3303:3306 第一個端口號爲Linux的端口號,第二個端口號爲Docker容器內部的端口號


查看一下Docker容器的狀態,發現mysql容器已經打開成功了。
在這裏插入圖片描述

4.使用SQLyou連接Mysql

1.先找到Linux的lp地址,如果知道IP地址就跳過

如果是虛擬機先關閉防火牆
systemctl stop firewalld

輸入ifconfig查看IP地址
ifconfig

在這裏插入圖片描述

如果是阿里雲服務器,找到自己的服務器公共IP地址,並且打開開放3303端口號
具體步驟訪問:阿里雲服務器配置外網訪問,打開3303端口
在這裏插入圖片描述

2.測試連接,輸入ip地址,端口號是3303測試一下
在這裏插入圖片描述
成功


4.使用Docker安裝Nginx

1.下載Nginx鏡像,啓動Nginx容器

話不多少,安裝Nginx一個命令解決

docker run -d -p 81:80 nginx

如果要指定版本的話輸入:docker run -d -p 81:80 nginx:版本號 即可
在這裏插入圖片描述

爲什麼這一個命令就可以實現Nginx下載至安裝結束呢?
這條命令不是啓動Nginx的嗎,其實是這樣的,啓動Nginx,會自動去鏡像文件找,結果找不到,就去聯網Docker Hub裏面下載,下載好了就自動的來部署Nginx,和Maven有點像,本地找不到jar包就去聯網下載到本地後在來使用。


爲什麼要映射端口號呢?
因爲Docker容器和Linux系統的端口一個在內一個在外,所以要映射到外部Linux系統的端口上,如果不映射就只能在容器中使用

-p 81:80是映射配置端口號的意思,意思是外部Linux映射到Docker容器的端口
第一個端口號爲Linux的端口號,第二個端口號爲Docker容器內部的端口號
完成,訪問看看


2.外網訪問Nginx

先找到Linux的lp地址,如果知道IP地址就跳過

如果是虛擬機先關閉防火牆
systemctl stop firewalld

輸入ifconfig查看IP地址
ifconfig

在這裏插入圖片描述

如果是阿里雲服務器,找到自己的服務器公共IP地址,並且打開開放81端口號
具體步驟訪問:阿里雲服務器配置外網訪問,打開81端口
在這裏插入圖片描述
訪問
在這裏插入圖片描述

成功!


5.使用Docker安裝Tomcat

1.下載Tomcat鏡像,啓動Tomcat容器

一個命令解決

docker run -d -p 8080:8080 --name mytomcat tomcat:9

如果要指定版本的話輸入:docker run -d -p 8080 :8080 --name mytomcat tomcat:版本號 即可
在這裏插入圖片描述
爲什麼這一個命令就可以實現Tomcat下載至安裝結束呢?
這條命令不是啓動Tomcat的嗎,其實是這樣的,啓動Tomcat,會自動去鏡像文件找,結果找不到,就去聯網Docker Hub裏面下載,下載好了就自動的來部署Tomcat,和Maven有點像,本地找不到jar包就去聯網下載到本地後在來使用。


爲什麼要映射端口號呢?
因爲Docker容器和Linux系統的端口一個在內一個在外,所以要映射到外部Linux系統的端口上,如果不映射就只能在容器中使用

-p 8081:8080 是映射配置端口號的意思,意思是外部Linux映射到Docker容器的端口
第一個端口號爲Linux的端口號,第二個端口號爲Docker容器內部的端口號
完成,訪問看看


2.外網訪問Tomcat

先找到Linux的lp地址,如果知道IP地址就跳過

如果是虛擬機先關閉防火牆
systemctl stop firewalld

輸入ifconfig查看IP地址
ifconfig

在這裏插入圖片描述

如果是阿里雲服務器,找到自己的服務器公共IP地址,並且打開開放8080端口號
具體步驟訪問:阿里雲服務器配置外網訪問,打開8080端口
在這裏插入圖片描述
訪問
在這裏插入圖片描述

成功!


6.使用Docker安裝Redis

1.下載Redis鏡像,啓動Redis容器

一個命令解決

docker run -d -p 16379:6379 --name redis redis:3

如果要指定版本的話輸入:docker run -d -p 16379:6379 --name redis redis:版本號 即可
在這裏插入圖片描述
爲什麼這一個命令就可以實現Redis下載至安裝結束呢?
這條命令不是啓動Redis的嗎,其實是這樣的,啓動Redis,會自動去鏡像文件找,結果找不到,就去聯網Docker Hub裏面下載,下載好了就自動的來部署Redis,和Maven有點像,本地找不到jar包就去聯網下載到本地後在來使用。


爲什麼要映射端口號呢?
因爲Docker容器和Linux系統的端口一個在內一個在外,所以要映射到外部Linux系統的端口上,如果不映射就只能在容器中使用

-p 16379:6379 是映射配置端口號的意思,意思是外部Linux映射到Docker容器的端口
第一個端口號爲Linux的端口號,第二個端口號爲Docker容器內部的端口號
完成,訪問看看


2.使用RedisDesktopManager連接Redis

先找到Linux的lp地址,如果知道IP地址就跳過

如果是虛擬機先關閉防火牆
systemctl stop firewalld

輸入ifconfig查看IP地址
ifconfig

在這裏插入圖片描述

如果是阿里雲服務器,找到自己的服務器公共IP地址,並且打開開放16379端口號
具體步驟訪問:阿里雲服務器配置外網訪問,打開16379端口
在這裏插入圖片描述
連接

在這裏插入圖片描述
成功!


如果中途報錯了怎麼辦

1.使用Docker自帶的logs命令查看容器運行日誌
先查看有哪些容器正在運行
docker ps

在這裏插入圖片描述

根據容器id查看運行日誌
例如我查看Tomcat的日誌

輸入:docker logs 容器id

在這裏插入圖片描述

2.推薦解決Docker Bug網站,有問必答

點擊進入

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章