1、首先打包項(xiàng)目:
成都創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),蘭西企業(yè)網(wǎng)站建設(shè),蘭西品牌網(wǎng)站建設(shè),網(wǎng)站定制,蘭西網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營(yíng)銷,網(wǎng)絡(luò)優(yōu)化,蘭西網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競(jìng)爭(zhēng)力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長(zhǎng)自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。npm run build;
2、配置nginx
Vue項(xiàng)目的入口是index.html,nginx路由必須要經(jīng)過這個(gè)文件,所以要配置nginx.conf文件。
找到localhost,添加一行代碼 try_files $uri $uri/ /index.html last;
location / {
root html;
try_files $uri $uri/ /index.html last;
index index.html index.htm;
}
3、重啟nginx
后端部署nginx.exe -s restart
1、打包項(xiàng)目
mvn clean package -Dmaven.test.skip=true
2、啟動(dòng)項(xiàng)目即可
java -jar vueblog-0.0.1-SNAPSHOT.jar --spring.profiles.active=default
二、Linux 環(huán)境部署1、配置后端項(xiàng)目在生產(chǎn)環(huán)境的yml
spring:
datasource:
type: com.alibaba.druid.pool.DruidDataSource
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://mysql:3306/simple_blog?&useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true
username: root
password: 123456
mybatis-plus:
mapper-locations: classpath:/mapper/*.xml
# configuration:
# log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
shiro-redis:
enabled: true
redis-manager:
host: redis:6379
因?yàn)閙ysql和redis和后端項(xiàng)目都是在同一網(wǎng)絡(luò)下編排的,所以可以用編排的名稱來代替指定的ip地址
2、打包后端項(xiàng)目
mvn clean package -Dmaven.test.skip=true
3、編寫Dockerfile構(gòu)建后端鏡像
FROM java:8
EXPOSE 8081
ADD simpleBlog-0.0.1-SNAPSHOT.jar app.jar
RUN bash -c 'touch /app.jar'
ENTRYPOINT ["java", "-jar", "app.jar", "--spring.profiles.active=pro"]
注意:如果項(xiàng)目中第三方服務(wù)都已經(jīng)部署好在其他服務(wù)上的,則只需在后端項(xiàng)目中配置好指定的地址即可,剩下的步驟的都是基于所有服務(wù)都是在同一個(gè)linux服務(wù)器上的
4、編寫docker-compose.yml
version: "3"
services:
nginx:
image: nginx:latest
ports:
- 80:80
volumes:
- ./nginx/html:/usr/share/nginx/html
- ./nginx/nginx.conf:/etc/nginx/nginx.conf
privileged: true
image: mysql:8.0.29-oracle
ports:
- 3306:3306
volumes:
- ./mysql/data:/var/lib/mysql
- ./mysql/config/my.cnf:/etc/my.cnf
environment:
- MYSQL_ROOT_PASSWORD=123456
redis:
image: redis:latest
vueblog:
image: vueblog:latest
build: .
ports:
- 8081:8081
mysql和nginx都是用數(shù)據(jù)卷來掛載在宿主機(jī)外面的,不然每次啟動(dòng)容器都會(huì)丟失上次的數(shù)據(jù)和已經(jīng)配置好的前端項(xiàng)目。
nginx: 首先在宿主機(jī)內(nèi)創(chuàng)建html文件夾,然后把前端項(xiàng)目打包好的dist文件夾的文件全部放在html文件夾上,然后修改nginx.conf
mysql:首先創(chuàng)建data和config文件夾,然后在config文件夾上創(chuàng)建my.cnf文件。
nginx.conf
#user root;
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 80;
server_name localhost;
location / {
root /usr/share/nginx/html;
try_files $uri $uri/ /index.html last;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
my.cnf
[mysqld]
user=mysql
default-storage-engine=INNODB
character-set-server=utf8
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
5、把準(zhǔn)備的文件上傳到同一目錄下
6、運(yùn)行指令進(jìn)行項(xiàng)目編排,出現(xiàn)下圖內(nèi)容
docker-compose up -d
你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級(jí)服務(wù)器適合批量采購(gòu),新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧