欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Docker實(shí)現(xiàn)從零開始搭建SOLO個(gè)人博客的方法步驟

 更新時(shí)間:2021年11月15日 09:31:18   作者:陳小c  
本文主要介紹了Docker實(shí)現(xiàn)從零開始搭建SOLO個(gè)人博客,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

一、環(huán)境準(zhǔn)備

要想在公網(wǎng)訪問你的博客,首先你需要一臺(tái)云服務(wù)器,也就是租用各大云廠商的服務(wù)器,像我就是花68塊買了一年青云的1核2G的服務(wù)器,你現(xiàn)在看到的博客就是在這臺(tái)服務(wù)器上,最好也購買一個(gè)專屬的域名。一年十幾就夠了。

二、安裝Docker

在這里插入圖片描述

因?yàn)槲覀兪怯肈ocker部署solo博客。所以我們首先要安裝docker,關(guān)于docker的介紹請(qǐng)各位同學(xué)自行百度。

配置yum源

sudo yum install -y yum-utils
sudo yum-config-manager \
--add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

安裝docker

sudo yum install -y docker-ce docker-ce-cli containerd.io

啟動(dòng)

systemctl enable docker --now

配置加速

這里額外添加了docker的生產(chǎn)環(huán)境核心配置cgroup

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://82m9ar63.mirror.aliyuncs.com"],
  "exec-opts": ["native.cgroupdriver=systemd"],
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "100m"
  },
  "storage-driver": "overlay2"
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

測(cè)試:

輸入 docker version 看到如下顯示就安裝成功了

image.png

三、安裝mysql主從數(shù)據(jù)庫

我們前面已經(jīng)安裝了docker,這里我們直接用命令一鍵部署mysql數(shù)據(jù)庫(筆者部署的主從的mysql)

3.1、mysql環(huán)境準(zhǔn)備

mkdir -p /data/master/data/mysql-master  &&  mkdir -p /data/master/data/mysql-slave  ##數(shù)據(jù)目錄
mkdir -p /data/master/master && mkdir -p /data/master/slave ##配置目錄

往配置目錄分別放兩個(gè)配置文件,master.cnf slave.cnf 內(nèi)容分別如下:

[root@website master]# cat master/master.cnf
[mysqld]
log-bin=mysql-bin
binlog_format=row
server-id=1
log-error=/var/log/mysqld.log


[root@website master]# cat slave/slave.cnf
[mysqld]
log-bin=mysql-bin
binlog_format=row
server-id=2
log-error=/var/log/mysqld.log

3.2、啟動(dòng)mysql主庫從庫

注意:這里的密碼設(shè)置為123456,將mysql的默認(rèn)數(shù)據(jù)存放目錄映射給了我的/data/master/data

 docker run -itd  --name mysql-master -v /data/master/data/mysql-master:/var/lib/mysql -v /data/master/master:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 mysql:5.6
 docker run -itd --name mysql-slave -v /data/master/data/mysql-slave:/var/lib/mysql -v /data/master/slave:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456 -p 3316:3306 mysql:5.6

3.3、登陸mysql主庫

docker ps -a ## 查看兩個(gè)mysql數(shù)據(jù)庫的狀態(tài)是否都是UP
docker exec -it mysql-master  /bin/bash
mysql -u root -p123456  ## 登陸mysql
show variables like 'log_bin'; ##查看bin-log的開啟狀態(tài),如果是ON代表開啟成功,我們主從同步是一定要開binlog
show master status; ## 查詢出的file名字與 Position要記一下,后面配置從庫會(huì)用到 
## 創(chuàng)建用戶并賦權(quán)
CREATE USER 'bakup'@'%' IDENTIFIED BY '123456';
GRANT ALL ON *.* TO 'bakup'@'%'; 
create database solo;

3.4、登陸mysql從庫

 docker exec -it mysql-slave  /bin/bash  ## 進(jìn)入從庫
 mysql -u root -p123456  ## 登陸mysql
 change master to master_host='192.168.1.5', master_port=3306,master_user='bakup',master_password='bakup', master_log_file='mysql-bin.000001',master_log_pos=154;  ##配置主從連接
 start slave;  ## 啟動(dòng)從庫備份
 show slave status\G;  ##查看狀態(tài)

看到兩個(gè)YES大功告成!

在這里插入圖片描述

3.5、主從參數(shù)說明

  • master_host:主庫的IP地址/服務(wù)器地址
  • master_port:主庫的端口
  • master_user:主庫開放出來的用戶
  • master_password:用戶的密碼
  • master_log_file:主庫的日志文件,二進(jìn)制日志文件,進(jìn)行同步的。就是上面show master status 里面的File
  • master_log_pos:上面show master status 里面的Position

四、搭建solo博客

前面的準(zhǔn)備工作都做完后,就可以開始安裝solo了
docker 啟動(dòng)solo

docker run --detach --name solo      --env RUNTIME_DB="MYSQL"     --env JDBC_USERNAME="root"     --env JDBC_PASSWORD="123456"     --publish 8080:8080     --link mysql-master:mysql-master     --env JDBC_DRIVER="com.mysql.cj.jdbc.Driver"     --env JDBC_URL="jdbc:mysql://192.168.1.5:3306/solo?useUnicode=yes&characterEncoding=UTF-8&useSSL=false&serverTimezone=UTC"     b3log/solo --listen_port=8080 --server_scheme=http --server_host=localhost --server_port=8080

docker logs solo ## 查看容器solo的日志

[INFO ]-[2021-11-12 18:30:32]-[org.b3log.solo.Server:254]: Solo is booting [ver=4.3.1, os=Linux, isDocker=true, inJar=false, luteAvailable=false, pid=1, runtimeDatabase=MYSQL, runtimeMode=PRODUCTION, jdbc.username=root, jdbc.URL=jdbc:mysql://192.168.1.5:3306/solo?useUnicode=yes&characterEncoding=UTF-8&useSSL=false&serverTimezone=UTC]
[INFO ]-[2021-11-12 18:30:34]-[org.b3log.solo.service.InitService:177]: It's your first time setup Solo, initialize tables in database [MYSQL]
[WARN ]-[2021-11-12 18:30:36]-[org.b3log.solo.service.InitService:150]: Solo has not been initialized, please open your browser to init Solo

當(dāng)出現(xiàn)Solo has not been initialized, please open your browser to init Solo,代表solo安裝成功,但是未進(jìn)行初始化,可以看到我們前面啟動(dòng)的端口是8080,我們用域名加端口感覺很low,所以我們用nginx去轉(zhuǎn)發(fā)一下。

五、Nginx實(shí)現(xiàn)反向代理solo博客

關(guān)于nginx的安裝,在這里就不在贅述,同學(xué)們可以去百度一哈
上配置文件:

http {
    sendfile on;
    include       mime.types;
    default_type  application/octet-stream;
    keepalive_timeout  65;
    gzip  on;
    upstream backend {
      server localhost:8080;
    }
    server {
        listen       80;
        server_name  yunxue521.top;
       location / {
        proxy_pass http://backend$request_uri;
        proxy_set_header  Host $http_host;
        proxy_set_header  X-Real-IP $remote_addr;
        }
}

可以看到我們定義了一個(gè)backend的地址指向我們本機(jī)的8080端口,nginx監(jiān)聽80端口,當(dāng)我們?nèi)ピL問80端口時(shí),就會(huì)都轉(zhuǎn)發(fā)到8080端口,進(jìn)而實(shí)現(xiàn)端口的轉(zhuǎn)發(fā)!

六、成果展示

在這里插入圖片描述

到此這篇關(guān)于Docker實(shí)現(xiàn)從零開始搭建SOLO個(gè)人博客的文章就介紹到這了,更多相關(guān)Docker實(shí)現(xiàn)從零開始搭建SOLO個(gè)人博客內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:

相關(guān)文章

  • Docker將鏡像文件發(fā)布到阿里云的詳細(xì)過程

    Docker將鏡像文件發(fā)布到阿里云的詳細(xì)過程

    這篇文章主要介紹了Docker將鏡像文件發(fā)布到阿里云的操作,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-05-05
  • docker如何查看已安裝的Redis版本

    docker如何查看已安裝的Redis版本

    這篇文章主要介紹了docker如何查看已安裝的Redis版本問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • 解決Docker容器下不能使用vim命令的問題

    解決Docker容器下不能使用vim命令的問題

    這篇文章介紹了解決Docker容器下不能使用vim命令的問題,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-03-03
  • Docker?隔離與限制原理介紹

    Docker?隔離與限制原理介紹

    這篇文章主要介紹了Docker?隔離與限制原理,對(duì)于?Docker?等大多數(shù)?Linux?容器來說,Cgroups?技術(shù)是用來制造約束的主要手段,而?Namespace?技術(shù)則是用來修改進(jìn)程視圖的主要方法,下文相關(guān)介紹,需要的朋友可以參考一下
    2022-04-04
  • docker 部署prometheus+grafana的過程詳解

    docker 部署prometheus+grafana的過程詳解

    這篇文章主要介紹了docker 部署prometheus+grafana的過程,本文通過示例圖文相結(jié)合給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2024-03-03
  • Docker容器compose容器集群的快速編排方式

    Docker容器compose容器集群的快速編排方式

    這篇文章主要介紹了Docker容器compose容器集群的快速編排方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • mac docker如何修改daemon.json文件

    mac docker如何修改daemon.json文件

    這篇文章主要介紹了mac docker如何修改daemon.json文件問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • Docker網(wǎng)絡(luò)配置及部署SpringCloud項(xiàng)目詳解

    Docker網(wǎng)絡(luò)配置及部署SpringCloud項(xiàng)目詳解

    bridge模式是Docker默認(rèn)的網(wǎng)絡(luò)設(shè)置,此模式會(huì)為每一個(gè)容器分配Network Namespace、設(shè)置IP等,并將一個(gè)主機(jī)上的Docker容器連接到一個(gè)虛擬網(wǎng)橋上,下面這篇文章主要給大家介紹了關(guān)于Docker網(wǎng)絡(luò)配置及部署SpringCloud項(xiàng)目的相關(guān)資料,需要的朋友可以參考下
    2023-01-01
  • Docker部署Java應(yīng)用程序的實(shí)現(xiàn)步驟

    Docker部署Java應(yīng)用程序的實(shí)現(xiàn)步驟

    本文主要介紹了Docker部署Java應(yīng)用程序的實(shí)現(xiàn)步驟,通過將Java應(yīng)用程序打包成一個(gè)Docker鏡像,可以實(shí)現(xiàn)快速部署、資源隔離和靈活擴(kuò)展,感興趣的可以了解一下
    2024-03-03
  • 基于docker-compose構(gòu)建Mongodb副本集的示例詳解

    基于docker-compose構(gòu)建Mongodb副本集的示例詳解

    副本集是?MongoDB?高可用性和數(shù)據(jù)安全性策略的基礎(chǔ),適用于對(duì)數(shù)據(jù)安全性和服務(wù)可用性有較高要求的場(chǎng)景,本文給大家介紹了如何基于docker-compose構(gòu)建Mongodb副本集,文中通過代碼示例給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2024-01-01

最新評(píng)論