国产化 飞腾芯片 银河麒麟 docker部署netcore

摘要:
1.背景本文档基于arm64架构服务器编写,使用Galaxy麒麟系统编写本文档。Galaxy麒麟系统有自己的Docker,所以我们不需要安装Docker。此外,Galaxy麒麟系统中的Docker已设置为自动启动,因此我们不需要将其设置为自动引导。如果单机没有Docker,我们需要在脚本中提供安装Docker的命令,并将Docker设置为启动后自动启动。2.单机Docker部署方案简介2.1:该方案基于mysq

1、背景介绍

此文档是基于arm64架构服务器编写的,写此文档时使用的是银河麒麟系统。银河麒麟系统自带docker,所有我们不需要再安装docker,而且银河麒麟系统中的docker已经设置了开机自启,我们不需要设置开机自启。如果之后安装单机版的电脑没有docker,则需要我们在脚本中提供安装docker的命令,并设置docker开机自启。

2、单机版docker部署方案简介

2.1:此方案根据mysql-server的arm64的镜像和数据库初始化sql来创建自己的mysql镜像,根据aspnetcore的arm64的镜像和后端项目代码创建自己的镜像,根据nginx的arm64镜像和前端项目代码创建自己的前端项目镜像。

2.2:此方案使用shell脚本一键部署。在shell脚本中实现镜像的加载与容器的运行。

2.3:由于此方案将数据库也安装在docker中,所以需要挂载数据到宿主机,防止数据丢失。

3、docker部署详细教程以及遇到的坑

3.1:部署所需文件的结构介绍,如下图:

国产化 飞腾芯片 银河麒麟 docker部署netcore第1张

每个文件或文件夹对应的左右请看箭头后说明。注意:文件夹mysql8,rms_mysql.jar,rms_net.jar,rms_vue.jar,start.sh这五个是我们部署时所需要的,其余的只是在创建镜像时需要使用,部署不需要。

3.2:core文件夹详细介绍

此文件夹下包含一个叫api的文件夹,此文件夹又.netcore开发人员提供,为.netcore项目打好的包。api文件夹下包含一个appsetting.json的配置文件,修改此文件中的mysql数据库连接信息。如下图

国产化 飞腾芯片 银河麒麟 docker部署netcore第2张

此文件夹下还包含一个叫dockerfile的文件,这个文件是我们用来构建自己后端项目。注意此文件无后缀,可以使用记事本等编辑器打开。dockerfile内容如下图,每一行命令及释义请看图片

国产化 飞腾芯片 银河麒麟 docker部署netcore第3张

3.3:db文件夹介绍

此文件夹下包含数据库初始化脚本(core.sql)和dockerfile文件。dockerfile文件命令及释义如下图:

国产化 飞腾芯片 银河麒麟 docker部署netcore第4张

3.4:mysql8文件夹介绍

此文件夹为docker内数据库容器在宿主机的挂载地址。如果不设置挂载,docker中数据库容器被删除后数据会丢失。这个文件夹是我先启动数据库容器,然后使用 docker exec -it db(容器名) bash此命令进入容器内部,然后将/var/lib/mysql文件夹拷贝到mysql8中。在数据库容器启动时会指定挂载文件地址,保证数据不丢失。

3.5:vue文件夹介绍

此文件夹包含dist文件夹,此文件夹为前端人员提供的前端打包好的项目。包含dockerfile文件和nginx.conf文件。

ngixn.conf文件为nginx的配置文件,如下图:

国产化 飞腾芯片 银河麒麟 docker部署netcore第5张

dockerfile文件如下图:

国产化 飞腾芯片 银河麒麟 docker部署netcore第6张

3.6 mysql.jar netcore.jar nginx.jar 这三个jar包为基础镜像,部署不需要。

3.7 rms_mysql.jar rms_net.jar rms_vue.jar 为我们自己创建的镜像,时根据core,db,vue这三个文件夹下的dockfile文件和其他文件来创建的。部署时需要这三个镜像。

3.8 start.sh为启动脚本,客户点击此脚本选择在终端中执行,可以完成安装部署。脚本介绍如下图:国产化 飞腾芯片 银河麒麟 docker部署netcore第7张

  

免责声明:文章转载自《国产化 飞腾芯片 银河麒麟 docker部署netcore》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Initialization failed for https://start.spring.io Please check URL, network and proxy settings.post传参部分数据丢失下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

PLSQL 使用技巧 常用设置 卡顿问题 病毒防范

相关工具版本:PL/SQL Developer: 9.0.4.1644  Oracle : Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Productionmore:Oracle 10g是第一个为网络计算设计的数据库管理系统;Oracle 11g合并和扩展了Oracle特有的功...

使用Docker GPU训练环境安装过程中所碰到的问题

输入下条命令,查看你的显卡驱动所使用的内核版本 cat /proc/driver/nvidia/version 输入下条命令,查看电脑驱动 cat /var/log/dpkg.log | grep nvidia 输入下条命令,查看电脑所有驱动 sudo dpkg --list | grep nvidia-* 问题1: root@4f80b64fe9f6:/...

C#连接一些常见的数据库(sql,Access,Oracle,Sybase,DB2)

1.C#连接连接Access //导入命名空间 using System.Data; using System.Data.OleDb; .. string strConnection="Provider=Microsoft.Jet.OleDb.4.0;"; strConnection+=@"Data Source=D:""Northwind.mdb";...

(02)mongodb 数据库与collection的基本操作

1、查询数据库。 show dbs;或者show databases; 2、创建数据库,必须创建collection,如果只有use shop; 不会创建数据库。 use shop; db.createCollection('goods'); 3、删除数据库。 use shop; db.dropDatabase(); 4、查询collection,先用us...

Docker部署Vue

在服务器上创建一个存放该文件的文件夹,将生成的文件上传到这个文件夹下。 上传的同级目录中创建Dockerfile以及nginx.conf两个文件。 # 设置基础镜像 FROM nginx # 定义作者 MAINTAINER L # 将dist文件中的内容复制到 /usr/share/nginx/html/这个目录下面 COPY dist/ /us...

docker容器中启动uwsgi秒退

docker容器中启动uwsgi秒退 docker容器中启动uwsgi秒退,若用docker logs 容器 只有 [uWSGI] getting INI configuration from uwsgi.ini,无其他错误信息。那么就是 uwsgi.ini里用了daemonize 参数。该参数会使uwsgi在后台运行。 而docker容器启动时若无-d参...