Docker安裝Nginx并部署及MySQL容器構(gòu)建全過程
一.MySQL容器的構(gòu)建
1.創(chuàng)建MySQL根目錄及配置文件夾&data文件夾
mkdir -p mysql/{conf,data}
2.上傳配置文件
將配置文件上傳到conf文件夾(數(shù)據(jù)庫配置文件已放到置頂資源中)
3.命令構(gòu)建MySQL容器
/soft/mysql/conf/my.cnf:/etc/my.cnf目錄為我們配置綁定的目錄
/soft/mysql/data:/var/lib/mysql 是將data目錄與MySQL目錄進行綁定
docker run \ --name m1 \ -v /soft/mysql/conf/my.cnf:/etc/my.cnf \ -v /soft/mysql/data:/var/lib/mysql \ --privileged=true \ -e MYSQL_ROOT_PASSWORD=123456 \ --net mynet \ --ip 172.20.0.200 \ -d mysql/mysql-server:5.7
5.創(chuàng)建用戶并賦予權(quán)限
進入到我們的MySQL容器中(m1為容器名)
docker exec -it m1 bash
進入容器后登錄到MySQL
mysql -u root -p
輸入密碼后進入到MySQL賦予權(quán)限
grant all on *.* to root@'%' identified by '123456';
6.編輯Dockerfile文件準備構(gòu)建鏡像
Dockerfile文件詳解:
openjdk為我們構(gòu)建的基礎鏡像
/project為我們指定的工作目錄,可以根據(jù)實際情況替換為自己的目錄
spring-jar為我們要上傳部署的項目,這里要提前將項目放到與當前dockerfile文件同級目錄下,然后將當前項目復制到我們的工作目錄
CMD java -jar spring.jar 是在創(chuàng)建鏡像時運行當前項目
-mysql/addr 為指定配置文件中的運行地址
FROM openjdk WORKDIR /project COPY spring-jar /project CMD java -jar spring.jar -mysql/addr
7.在MySQL中用命令運行SQL文件
首先將準備好的SQL文件放到之前創(chuàng)建好的../mysql/data目錄下
然后登錄進入到當前Mysql中
在前面我們構(gòu)建鏡像時有一個將data目錄與MySQL配置文件目錄進行綁定
-v /soft/mysql/data:/var/lib/mysql
注:首先要創(chuàng)建好數(shù)據(jù)庫并指定使用當前數(shù)據(jù)庫
例:
create database shop use shop
現(xiàn)在我們可以執(zhí)行以下命令進行運行SQL文件
source /var/lib/mysql/book.sql
二.Nginx安裝與部署
1.拉取Nginx鏡像
docker pull nginx
2.創(chuàng)建并運行Nginx容器
docker run -it -p 80:80 --name n1 nginx
我們利用IP訪問一下,出現(xiàn)以下界面說明安裝成功
上面的創(chuàng)建是最基礎的創(chuàng)建Nginx容器,在后期我們還需要對Nginx進行配置,目錄掛載等等
1.新建Nginx目錄及配置目錄
mkdir -p /soft/nginx/conf.d
進入到當前目錄,將配置文件上傳(配置文件在資源置頂,包含Nginx集群和域名映射)
再所需測試的前端文件資源進行上傳(同上)
2.運行以下命令創(chuàng)建并配置容器
docker run -itd \ --name n1 \ -v /soft/nginx/conf.d:/etc/nginx/conf.d \ -v /soft/nginx/html:/etc/nginx/html \ -p 80:80 \ --net mynet \ --ip 172.20.0.104 \ nginx
容器創(chuàng)建運行完成后,在主機可以利用IP進行訪問,訪問成功說明前端部署成功了
3.本機域名映射
進入到我們本機的C:\Windows\System32\drivers\etc目錄下
找到Host打開進行修改你要映射的域名
輸入你的虛擬機IP以及域名
總結(jié)
到此這篇關(guān)于Docker安裝Nginx并部署及MySQL容器構(gòu)建的文章就介紹到這了,更多相關(guān)Docker安裝Nginx部署MySQL容器構(gòu)建內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Docker容器中Mysql數(shù)據(jù)的導入/導出詳解
服務器在使用了 Docker 后,對于備份和恢復數(shù)據(jù)庫的事情做下記錄,下面這篇文章主要給大家介紹了Docker容器中Mysql數(shù)據(jù)導入/導出的相關(guān)資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下2018-09-09Docker鏡像的遷移與備份及Dockerflie 使用方法詳解
遷移和備份主要有三個操作命令將容器保存為鏡像、備份鏡像(將鏡像導出為一個文件)、鏡像的遷移與恢復,這篇文章主要介紹了Docker鏡像的遷移與備份、Dockerflie 使用方法,需要的朋友可以參考下2022-07-07Docker安裝配置Oracle詳細步驟記錄(以作持久化處理)
docker是一個用Go語言實現(xiàn)的開源項目,可以讓我們方便的創(chuàng)建和使用容器,下面這篇文章主要給大家介紹了關(guān)于Docker安裝配置Oracle詳細步驟的相關(guān)資料,需要的朋友可以參考下2024-03-03