当前位置: 首页 > news >正文

烟台网站排名seo网站开发需要多久

烟台网站排名seo,网站开发需要多久,网站建设实施流程图,wap网站开发 php1 阿里云服务器项目部署-单机部署 docker-compose 1.1 搭建背景 服务器 阿里云服务器 前端 vue 后端 springboot 服务 redis 、nginx、minio 都做单机模式部署,不做集群部署 博客内容参考了其他博文#xff0c;会贴出来 1.2 重要端口开放前提说明 任何开放的端…1 阿里云服务器项目部署-单机部署 docker-compose 1.1 搭建背景 服务器 阿里云服务器 前端 vue 后端 springboot 服务 redis 、nginx、minio 都做单机模式部署,不做集群部署 博客内容参考了其他博文会贴出来 1.2 重要端口开放前提说明 任何开放的端口都需要先在阿里云控制台进行开放 1.2 docker搭建 两种方式安装 1、yum方式安装docker我用的是这个 2、采用源码包方式安装一般内网部署会用到这个我不会 官方开发博客 https://docs.docker.com/engine/install/centos/ 参考博文https://blog.csdn.net/qq_42971035/article/details/121733265 操作步骤 # 1.卸载旧的版本 sudo yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine# 如有需要可以安装gcc yum -y install gcc# 以及gcc-c yum -y install gcc-c# 2.需要的安装包 sudo yum install -y yum-utils# 3.设置镜像仓库 sudo yum-config-manager \--add-repo \# 默认是国外的不要使用https://download.docker.com/linux/centos/docker-ce.repo# 建议使用阿里云的镜像十分快sudo yum-config-manager \--add-repo \http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo# 更新yum软件包索引安装前的工作非必须 yum makecache fast # yum makecache: error: argument timer: invalid choice: fast (choose from timer) # 安装报错了yum makecache fast是centOS7的命令 不使用8可以直接使用 yum makecache # 或者 dnf makecache# 4.安装docker docker-ce社区版的docker-ee企业版的 sudo yum install docker-ce docker-ce-cli containerd.io# 5.启动dockersystemctl start docker# 6.查看docker版本 docker version # 或者 sudo docker version# 7.测试Hello World docker run hello-world # 或者 sudo docker run hello-world当出现Hello from Docker!”时代表我们镜像安装成功。 # 8.查看下载的hello-world镜像 docker images #或者 sudo docker images此时会有对应的镜像显示 REPOSITORY TAG IMAGE ID CREATED SIZE hello-world latest feb5d9fea6a5 2 months ago 13.3kB到了这里才真正代表着docker安装成功并成功拉取对应的镜像。 如果需要卸载docker的话 # 1.卸载docker yum remove docker-ce docker-ce-cli containerd.io# 2.删除资源 rm -rf /var/lib/docker# /var/lib/docker docker的默认工作路径1.3 docker-compose搭建 也可以不用docker-compose 管理多个容器自己选择 需要从github上下载docker-compose二进制文件安装 curl -L https://github.com/docker/compose/releases/download/1.16.1/docker-compose-uname -s-uname -m -o /usr/local/bin/docker-compose 这个命令是用于从 GitHub 上下载 Docker Compose 的二进制文件并将其保存到 /usr/local/bin/docker-compose 路径下。 下面是对该命令的解释 curl一个用于在命令行中进行网络请求的工具。它可以用于从远程服务器下载文件。-L在下载过程中如果服务器返回重定向HTTP 3xx 响应则自动跟随重定向。https://github.com/docker/compose/releases/download/1.16.1/docker-compose-uname -s-uname -m这部分是要下载的文件的 URL。其中uname -s 返回当前操作系统的名称uname -m 返回当前机器的架构。这样URL 就会根据操作系统和机器架构自动选择相应的文件进行下载。-o /usr/local/bin/docker-compose指定下载的文件保存的路径和文件名。在这里下载的文件将被保存为 /usr/local/bin/docker-compose。 该命令的目的是将 Docker Compose 的二进制文件下载到你的系统中以便你可以在命令行中直接使用 docker-compose 命令来管理 Docker 容器。完成下载后可能需要给下载的文件添加可执行权限才能在命令行中正常使用。例如可以执行以下命令 sudo chmod x /usr/local/bin/docker-compose请注意该命令需要在具有适当权限的用户或使用管理员root权限下运行以保证文件可以被保存到 /usr/local/bin/ 目录中。 查看docker-compose版本是否安装完成 [rootiZbp1ao8rgk3c56ynu2aliZ /]# docker-compose -v docker-compose version 1.29.2, build 5becea4c以下的服务 我都安装在docker目录下了 1.3 mysql搭建 参考博客https://blog.csdn.net/qq_34383510/article/details/130902638 1.3.1创建目录 -- 在root目录下创建docker目录 mkdir docker -- 在docker目录下创建mysql目录 cd /docker mkdir mysql1.3.2创建docker-compose.yml 在docker目录下执行 vim docker-compose.yml 输入内容如下 version: 3 services:# mysql容器 - Mysql containermysql: # 这里mysql是服务名# 容器名container_name: container-mysql# 指定了容器的网络模式为桥接模式network_mode: bridgeenvironment:# 时区上海 - Time zone Shanghai (Change if needed)TZ: Asia/Shanghai# root 密码 - root passwordMYSQL_ROOT_PASSWORD: 你的密码#镜像image: mysql/mysql-server:8.0.28# 指定了容器停止后总是重新启动restart: always# 端口 定义了容器的端口映射将容器内的 MySQL 服务的 3306 端口映射到主机的 13306 端口ports:- 13306:3306# 数据挂载 - Data mountingvolumes:# 将主机上的 /docker/mysql/data 目录挂载到容器内的 /var/lib/mysql 目录。这样做的目的是将 MySQL 数据目录与主机上的目录进行映射使得数据在容器重启或删除后不会丢失- /docker/mysql/data:/var/lib/mysql# 将主机上的 /docker/mysql/conf/my.cnf 文件挂载到容器内的 /etc/my.cnf 文件。这样做的目的是将 MySQL 的配置文件与主机上的配置文件进行映射以便在容器启动时加载自定义的 MySQL 配置。- /docker/mysql/conf/my.cnf:/etc/my.cnf# 将主机上的 /docker/mysql/log 目录挂载到容器内的 /var/log/mysql 目录。这样做的目的是将 MySQL 的日志文件与主机上的目录进行映射以便在容器运行时可以方便地查看 MySQL 的日志信息。- /docker/mysql/log:/var/log/mysql# 将主机上的时间配置文件 /etc/localtime 挂载到容器内的 /etc/localtime 文件并设置为只读模式。这样做的目的是让容器内的时间与主机上的时间保持一致以避免时间不一致可能带来的问题。- /etc/localtime:/etc/localtime:ro ports: - 13306:3306 定义了容器的端口映射将容器内的 MySQL 服务的 3306 端口映射到主机的 13306 端口那么应该如最上面所说在阿里云开放13306端口在本地连接时也应该用 公网ip:13306 连接服务器上的mysql我自己嫌麻烦用的都是3306 ports: 3306:3306 执行命令启动docker-compose up -d 或者 docker-compose up docker-compose up -d: 使用 -d 参数表示以“后台模式”detached mode启动容器。这意味着容器将在后台运行并且你可以继续使用终端窗口进行其他操作而不会被容器的输出所阻塞。这在生产环境或需要长期运行的服务中很常见。docker-compose up: 没有 -d 参数表示以“前台模式”foreground mode启动容器。容器将在当前终端窗口中运行并且你将看到容器的输出信息。如果你使用 Ctrl C 组合键来终止命令容器也将停止运行。这在开发和调试阶段通常更为方便因为你可以立即看到容器的输出信息和错误提示。 如果你想让容器在后台运行并且不希望终端被容器的输出所阻塞可以使用 docker-compose up -d。如果你希望在当前终端中看到容器的输出信息并且方便地终止容器的运行可以使用 docker-compose up。 如果 执行docker-compose up -d 启动再输入 docker ps 查看启动的镜像 如果有mysql那表示启动成功 关闭所有服务 docker-compose down 关闭某个服务 docker-compose stop 服务名 服务名不是容器名 1.3.3 mysql远程访问 本地打开mysql软件用公网ip:开放的端口 密码 远程连接 连接失败解决方法 执行命令docker ps查询启动的镜像 docker exec -it 容器id bin/bash 进入容器 mysql -u root -p登录mysql use mysql;切换数据库update user set host% where userroot; grant all privileges on *.* to root%; flush privileges; 设置成功后重新连接成功。 1.4 redis搭建 参考博客https://blog.csdn.net/qq_34383510/article/details/131352344 在docker目录下创建redis目录 cd /docker mkdir redis 在redis目录下创建data目录 cd redis mkdir data创建redis.conf 在redis目录下创建redis.conf配置文件 主要修改以下几项配置# 开启密码验证可选要是注释掉就不用密码登录了 # requirepass 123456 requirepass 123456# 允许redis外地连接需要注释掉绑定的IP # bind 127.0.0.1# 关闭保护模式 当 protected-mode 设置为 yes默认值时Redis 服务器只允许通过本地环回地址127.0.0.1进行访问并拒绝来自外部网络的连接请求。这样可以确保 Redis 服务器只能被本地应用程序访问我们需要远程访问所以修改为no protected-mode no# 注释掉daemonize yes或者配置成 daemonize no。因为该配置和 docker run中的 -d 参数冲突会导致容器一直启动失败 daemonize no# 开启redis数据持久化 可选 appendonly yes完成配置 # bind 192.168.1.100 10.0.0.1 # bind 127.0.0.1 ::1 #bind 127.0.0.1protected-mode noport 6379tcp-backlog 511requirepass 123456timeout 0tcp-keepalive 300daemonize nosupervised nopidfile /var/run/redis_6379.pidloglevel noticelogfile databases 16always-show-logo yessave 900 1 save 300 10 save 60 10000stop-writes-on-bgsave-error nordbcompression yesrdbchecksum yesdbfilename dump.rdbdir ./replica-serve-stale-data yesreplica-read-only yesrepl-diskless-sync norepl-disable-tcp-nodelay noreplica-priority 100lazyfree-lazy-eviction no lazyfree-lazy-expire no lazyfree-lazy-server-del no replica-lazy-flush noappendonly yesappendfilename appendonly.aofno-appendfsync-on-rewrite noauto-aof-rewrite-percentage 100 auto-aof-rewrite-min-size 64mbaof-load-truncated yesaof-use-rdb-preamble yeslua-time-limit 5000slowlog-max-len 128notify-keyspace-events hash-max-ziplist-entries 512 hash-max-ziplist-value 64list-max-ziplist-size -2list-compress-depth 0set-max-intset-entries 512zset-max-ziplist-entries 128 zset-max-ziplist-value 64hll-sparse-max-bytes 3000stream-node-max-bytes 4096 stream-node-max-entries 100activerehashing yeshz 10dynamic-hz yesaof-rewrite-incremental-fsync yesrdb-save-incremental-fsync yes 打开docker-compose.yml 输入以下内容 复制过去注意缩进和 mysql是同级 #redis容器 - Redis containerredis:image: redis:6.2.5container_name: container-redisports:- 6379:6379environment:# 时区上海 - Time zone Shanghai (Change if needed)TZ: Asia/Shanghaivolumes:# 数据文件 - data files- /docker/redis/data:/data:rw- /docker/redis/redis.conf:/usr/local/etc/redis/redis.conf- /docker/redis/data/logs:/logscommand: redis-server /usr/local/etc/redis/redis.conf --requirepass 123456 --appendonly yesprivileged: truerestart: alwaysnetwork_mode: bridge要去阿里云开放6379端口 再次执行docker-compose up -d成功启动redis 1.5 minio搭建 打开docker-compose.yml 输入以下内容 复制过去注意缩进和 mysql是同级 没有指定minio版本 minio:image: minio/miniohostname: minioports:- 9000:9000 # api 端口- 9001:9001 # 控制台端口environment:MINIO_ACCESS_KEY: admin #管理后台用户名MINIO_SECRET_KEY: admin123 #管理后台密码最小8个字符volumes:- /docker/minio/data:/data #映射当前目录下的data目录至容器内/data目录- /docker/minio/config:/root/.minio/ #映射配置目录command: server --console-address :9001 /data #指定容器中的目录 /dataprivileged: truerestart: always要去阿里云开放9000端口 再次执行docker-compose up -d成功启动minio 1.6 nginx搭建 参考博客https://blog.csdn.net/PyongSen/article/details/123054599 # 切换目录 cd /docker # 创建nginx文件交 mkdir nginx创建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 8083; # 前端的端口server_name localhost;location / {# 这里的root 是下面的docker-compose.yml实现了前端网页的挂载root /usr/share/nginx/html; # nginx 报404需要加下面这行try_files $uri $uri/ /index.html last; index index.html index.htm;#nginx 报405加下面这行error_page 405 200 http://$host$request_uri;}#nginx 报 连接错误 、没有数据We’re sorry but “XXX” doesn’t work...放开下面的注释# 跨域location ^~/api/ {add_header Access-Control-Allow-Origin *;add_header Access-Control-Allow-Methods GET, POST, OPTIONS;add_header Access-Control-Allow-Credentials true;proxy_set_header X-NginX-Proxy true; #rewrite ^(.*)api(.*)$ $1/$2; break;proxy_pass http://公网ip:后端端口/;#rewrite ^/api/(.*) /$1 break;}error_page 500 502 503 504 /50x.html;location /50x.html {root html;}} }打开docker-compose.yml 输入以下内容 复制过去注意缩进和 mysql是同级 nginx: # 服务名称用户自定义container_name: container-nginximage: nginx:latest # 镜像版本ports:- 8083:8083 # 前端项目暴露的端口restart: always #docker启动的时候会自动启动这个服务#network_mode: host #不在对应某个端口我认为的解释是对应所有端口了volumes: # 挂载 # html和nginx.conf 挂载# 将宿主机上的 /docker/nginx/logs 目录挂载到容器内的 /var/log/nginx 目录。这样做的目的是将 Nginx 的日志文件存储在宿主机上以便于日志的管理和查看。- /docker/nginx/logs:/var/log/nginx# 将宿主机上的 /docker/nginx/html 目录挂载到容器内的 /usr/share/nginx/html 目录。这样做的目的是将网站的静态文件存储在宿主机上从而实现网站内容的持久化和管理。- /docker/nginx/html:/usr/share/nginx/html# 将宿主机上的 /docker/nginx/nginx.conf 文件挂载到容器内的 /etc/nginx/nginx.conf 文件。这样做的目的是将 Nginx 的配置文件存储在宿主机上并使之对 Nginx 服务产生影响从而实现配置的持久化和灵活性- /docker/nginx/nginx.conf:/etc/nginx/nginx.confprivileged: true # 这个必须要解决nginx的文件调用的权限问题先不用启动等前后端全部署好一起启动 1.7 jdk搭建 参考博客https://blog.csdn.net/m0_49762804/article/details/132362282 下载地址https://www.oracle.com/java/technologies/javase/javase8u211-later-archive-downloads.html 下载完上传放在哪个文件交都行我嫌麻烦统一放在docker文件夹里 cd /docker madir java 上传文件到 /docker/java tar -zxvf jdk-8u381-linux-x64.tar.gz接下来配置环境变量 vim命令打开/etc/profile vim /etc/profile添加下面内容 #Set Java_Environment export JAVA_HOME/docker/java/jdk1.8.0_381 export JRE_HOME/docker/java/jdk1.8.0_381/jre export CLASSPATH.:$JAVA_HOME/lib$:JRE_HOME/lib:$CLASSPATH export PATH$JAVA_HOME/bin:$JRE_HOME/bin/$JAVA_HOME:$PATH退出编辑模式 按 esc 按键 英文输入法状态下 输入 :wq 按回车加载环境变量 source /etc/profile验证是否安装成功 java -version1.8 前端部署 前端是 vue 项目 在控制台 输入 npm run build 在 /docker/nginx/ 目录下创建 html文件交 cd /docker/nginx mkdir html前端打包好之后会创建dist文件夹将该文件夹下的文件都上传到 /docker/nginx/html路径下这样前端就配置好了 前端部署好这时候就能启动docker-compose了 docker-compose up -d1.9 后端部署 我是把后端和服务分成了两个docker-compose.yml,可以不用这么做 一个yml用来启动服务一个用来启动jar包 cd /docker mkdir app后端架包上传到该路径创建Dockfile文件该文件没有后缀名 Dockfile内容 #使用java 8 版本 FROM openjdk:8 # 将本目录下的park-0.0.1-SNAPSHOT.jar 复制到 /docker/app/并重命名为 park-jar.jar COPY park-0.0.1-SNAPSHOT.jar /docker/app/park-jar.jar WORKDIR /docker/app #对外暴露的端口 EXPOSE 8081ENTRYPOINT [java, -jar, /docker/app/park-jar.jar ]创建docker-dompose.yml 编写内容 version: 3 services:park-jar:container_name: container-park-jarrestart: alwaysimage: park-jarbuild: # 表示以当前目录下的Dockerfile开始构建镜像context: . #Dockerfile 所在目录dockerfile: Dockerfile ports:- 8081:8081 #后端项目暴露的端口privileged: true启动后端 docker-compose up -d然后再浏览器地址栏输入 公网ip:前端端口就能正常访问项目了。 结束。 Ub-1712815960265)] 后端架包上传到该路径创建Dockerfile文件该文件没有后缀名 Dockerfile内容 #使用java 8 版本 FROM openjdk:8 # 将本目录下的park-0.0.1-SNAPSHOT.jar 复制到 /docker/app/并重命名为 park-jar.jar COPY park-0.0.1-SNAPSHOT.jar /docker/app/park-jar.jar WORKDIR /docker/app #对外暴露的端口 EXPOSE 8081ENTRYPOINT [java, -jar, /docker/app/park-jar.jar ]创建docker-dompose.yml 编写内容 version: 3 services:park-jar:container_name: container-park-jarrestart: alwaysimage: park-jarbuild: # 表示以当前目录下的Dockerfile开始构建镜像context: . #Dockerfile 所在目录dockerfile: Dockerfile ports:- 8081:8081 #后端项目暴露的端口privileged: true启动后端 docker-compose up -ddocker ps 所有的镜像都在这里了 然后再浏览器地址栏输入 公网ip:前端端口就能正常访问项目了。 结束。
http://www.pierceye.com/news/226948/

相关文章:

  • 建设工程项目管理网站上海it公司
  • 网站运营需要 做哪些工作做网站需要了解的知识
  • 旅游去过的地方可做标识网站百度一下网页入口
  • 做ps找图的网站有哪些法与家国建设征文网站
  • 途途外贸企业网站管理系统aspnet网站模板
  • 网站建设企业网站常用参数
  • 深圳市建设工程质量检测网站网站建设公司 待遇
  • 站长工具大全php做在线直播网站
  • 品牌建设网站公司排名3d模型代做网站
  • 保定网站建设模板联系方式网站设计时图片怎么做
  • 网站策划书内容鄂尔多斯网站制作 建设
  • 广州展厅设计公司排名seo快速排名首页
  • 网站命名方式潍坊市建设工程管理处网站
  • 暴利产品竞价单页网站上海做网站建设的公司排名
  • 坪地网站建设如何做网站前端多少钱
  • 国内用不了的网站展示图片的网站模板
  • 网站优化首页付款网站制作职业
  • 做网站的软件有些什么建设公司门户网站
  • 浙江省长兴县建设局网站自己专业做网站
  • 做网站外包最牛的公司东莞网站制作十年乐云seo
  • 慈溪专业做网站公司网站后台内容更换怎么做
  • wordpress网站搭建教程视频网站优化前景
  • 门户网站的优点seo月薪
  • 怎样做网站静态什么网站做二维码比较好
  • 共享虚拟主机做网站够用么抖音短剧推广怎么做
  • 个人网站备案内容写什么西部数码网站管理助手v3.1
  • 搜索引擎 网站模板wordpress 图片走cdn
  • 常见cms网站源码下载重庆微信网站开发公司
  • 网站开发用什么电脑天津室内设计公司排名
  • 云南网站建设招商建设公司网站计入哪个科目