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

网站开发完以后交付源代码建网站的好处

网站开发完以后交付源代码,建网站的好处,文化建设包括哪些,网页模板大全本文主要是总结这些年自己在家玩互联网服务的心得收获, 同时随着年龄增大, 发现脑子确实越来越不好用, 只有记录到笔记中才是真正有意义的。 学生时期做了一些实验, 比如给实验室做日报系统、管理10多台服务器#xff0c;当时学习了很多架构设计的知识#xff0c;比如集群化…本文主要是总结这些年自己在家玩互联网服务的心得收获, 同时随着年龄增大, 发现脑子确实越来越不好用, 只有记录到笔记中才是真正有意义的。 学生时期做了一些实验, 比如给实验室做日报系统、管理10多台服务器当时学习了很多架构设计的知识比如集群化部署服务如何增加存储速度如何容灾部署如何主备切换后来也如愿以偿的进入到了云计算大厂且有幸参与了云计算大厂的集群化基础设施服务主要是对象存储方面的开发、运维设计等工作成功将以前所学融汇贯通如信息采集、告警监控Alarm(拨测、指标、日志)、变更审计、硬件维护、问题管理、知识库、安全登录集群化部署自然有其好处但是从运维、变更等角度讲复杂性显著提高。 作为工程师对于服务架构较为感兴趣, 同时也对实际应用感兴趣, 因此常常关注b站新服务, 而我本地在家也搭建了很多实用服务, 比如NAS影音系统jellyfin、喜欢玩智能家居的人不可能不知道mqtt服务和Homeassistant服务、喜欢炼丹的人不能不知道jupyter、做定时任务撸羊毛的青龙、系统监控的宝塔、docker后台portaine、博客halo显然上面的所有服务都是通过docker一键完成安装并且都是单体应用不涉及容灾也不涉及备份因为挂了就挂了反正数据在硬盘了如果硬盘也坏了数据也不重要。。。。那么当一个人在本地部署了这么多服务出门在外的自己还能访问家里的资源将变得尤为重要 恰好之前活动120买了三年的云服务器还带公网IP于是果断选择了Frp 作为内网穿透的工具frp可以将内网的端口映射到server的端口比如本地服务端口8080设置frp映射到996那么通过官网IP:996进行访问实际访问的便是本地IP:8080 后来又购买了域名其实对域名解析不太了解只知道购买域名要映射到公网IP也就是一个域名对应一个公网IP当时的问题是一个域名只能对应一个服务如何将很多服务都加上呢最蠢的方案来了通过域名加端口的方式比如域名是zjq2048.cn那么加上端口不就能对应上不同的服务了么比如访问996端口就zjq2048.cn:996传说中的CNAME和TXT域名解析设置还真的持续了一段时间直到有一天又学到了nginx域名转发才发现原来可以通过设置二级域名直接用nginx来解析访问的二级域名在根据二级域名来解析到对应的端口即可于是乎就有了域名解析→nginx解析→内网穿透→本地各个服务的架构设计如下图所示 实际上互联网的业务逻辑其实跟下面很像不过是将所有的服务拆分到不同的机器上我这里就一个主机all in one每个机器多个节点对应一个服务每个服务对应一个二级域名在通过集群型nginx做LVS负载均衡最终由redis这种分布式缓存做数据强一致性校验再由数据库做主备和容灾切换和备份。 将下面一套流程玩转至少互联网大部分知识点都涉及到了剩下的细节知识需要靠日积月累也要靠问题解决堆出来不过有了一个整体的架构设计方向在处理问题、新业务架构设计都能有非常大的帮助。 1. 总设计架构 下面就是我的all in one 了 常用docker命令 # 更新容器more重启 docker update --restartalways 容器名称# 连接WiFi nmcli device wifi connect Wifi007 password duzejiang555 nmcli c down Wifi007 # 关闭WiFi后面跟这个, 加速下载 registry.cn-beijing.aliyuncs.com/dusays/wechatbot/wechatbot:latestfrp内网穿透 域名解析, 设置云服务器IP, 对应tools.zjq2048.cn 云服务器上面的Nginx转发, 云服务器的端口6667对应tools.zjq2048.cn # 本地服务, 8082的端口, TCP映射到这个云服务器的6667端口 # 在通过Nginx将6667端口映射成tools.zjq2048.cn上 server {listen 80;server_name tools.zjq2048.cn;location / {proxy_pass http://127.0.0.1:6667/;}error_page 500 502 503 504 /50x.html;location /50x.html {root html;}}frpc配置 [ssh-n5105-ssh] type tcp local_ip 127.0.0.1 local_port 22 remote_port 6666# 这里本地的8082服务, 通过tcp转发给远程服务器6667 [ssh-n5105-tools] type tcp local_ip 127.0.0.1 local_port 8082 #custom_domains tools.zjq2048.cn remote_port 6667默认开机自启动 sudo vim /lib/systemd/system/frpc.service [Unit] Descriptionfraps client service Afternetwork.target syslog.target Wantsnetwork.target[Service] Typesimple #启动服务的命令此处写你的frps的实际安装目录 ExecStart/home/zjq/.frp/frpc -c /home/zjq/.frp/frpc.ini[Install] WantedBymulti-user.targetsudo systemctl enable frpc sudo systemctl start frpc sudo systemctl restart frpc sudo systemctl stop frps # 停止服务 sudo systemctl status frps # 查看服务日志开启热点 创建WiFi热点使用的GitHub上一个开源项目 https://github.com/oblique/create_ap#将代码copy到本地安装 sudo git clone https://github.com/oblique/create_ap cd create_ap sudo apt-get install util-linux procps hostapd iproute2 iw -y ifconfig查询wlan口 sudo create_ap wlan0 eth0 账号 密码 sudo ./create_ap wlo2 wlo2 zjq 密码 配置服务自启动 sudo vim /lib/systemd/system/ap.service # frpc就是对应的systemctl服务# 写入下面内容--------------------------------------------------------------- [Unit] Descriptioncreate ap Afternetwork.target syslog.target Wantsnetwork.target[Service] Typesimple #启动服务的命令此处写你的frps的实际安装目录 ExecStart/share/software/create_ap wlo2 wlo2 账号 密码[Install] WantedBymulti-user.target # --------------------------------------------------------------sudo systemctl start frpc # 然后就启动frpc sudo systemctl enable frpc # 再打开开机自启动 sudo systemctl restart frpc # 重启服务 sudo systemctl stop frps # 停止服务 sudo systemctl status frps # 查看服务日志 docker管理 docker volume create portainer_data docker run -d -p 8000:8000 -p 9000:9000 --nameportainer --restartalways -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce浏览器访问 :9000安装青龙面板 https://zhuanlan.zhihu.com/p/596197020 docker run -dit -v $PWD/ql:/ql/data -p 5700:5700 --name ql --hostname ql --restart unless-stopped whyour/qinglong:latest # 浏览器登录 192.168.3.12:5700 开始安装 通知设置选择跳过 设置账号密码 登录邮箱 zjq2048qq.com kruntbgkqiaobjbh 上面是秘钥 增加js依赖 依赖管理 Nodejs新建依赖点击自动拆分 crypto-js prettytable dotenv jsdom date-fns tough-cookie tslib ws7.4.3 ts-md5 jsdom -g jieba fs form-data json5 global-agent png-js types/node require typescript js-base64 axios moment ds增加python依赖 点击自动拆分 requests canvas ping3 jieba aiohttpql repo https://js.dayplus.xyz/https://github.com/6dylan6/jdpro.git jd_|jx_|jddj_ backUp ^jd[^_]|USER|JD|function|sendNotifyql repo https://git.metauniverse-cn.com/https://github.com/shufflewzc/faker3.git jd_|jx_|gua_|jddj_|jdCookie activity|backUp ^jd[^_]|USER|function|utils|sendNotify|ZooFaker_Necklace.js|JDJRValidator_|sign_graphics_validate|ql|JDSignValidator|magic|depend|h5sts main 安装宝塔面板 docker run -tid --name baota -p 8180:80 -p 8143:443 -p 3306:3306 -p 8148:8888 -p 8138:888 -p 8120:20 -p 8121:21 -p 8122:22 -p 6379:6379 -p 6001:6001 --privilegedtrue --restart always pch18/baotadocker exec -it baota bash #进入docker宝塔容器 rm -f /www/server/panel/data/admin_path.pl #关闭安全出口 bt default #重置宝塔面板的登陆账号及密码后期进入面板后可手动修改 password密码错误的话就输入 bt 5http://192.168.3.12:8148/login 进行访问了正常部署一点问题都没有。docker run -tid --name baota -p 8180:80 -p 8143:443 # 用于SSL访问 -p 3306:3306 # mysql数据库 -p 8148:8888 # 管理面端口 -p 8138:888 # 数据库服务器端phpmyadmin -p 8120:20 # 将容器的20和21端口映射到主机的20和21端口用于FTP访问 -p 8121:21 # 将容器的20和21端口映射到主机的20和21端口用于FTP访问 -p 8122:22 -p 6379:6379 # redis数据库 -p 6001:6001 --privilegedtrue --restart always pch18/baota安装卡夫卡 –restartalways https://juejin.cn/post/6960820341631352868 #参数说明 -e KAFKA_BROKER_ID0 在kafka集群中每个kafka都有一个BROKER_ID来区分自己 -e KAFKA_ZOOKEEPER_CONNECT192.168.124.28:2181/kafka 配置zookeeper管理kafka的路径192.168.124.28:2181/kafka -e KAFKA_ADVERTISED_LISTENERSPLAINTEXT://192.168.124.28:9002 把kafka的地址端口注册给zookeeper如果是远程访问要改成外网IP,类如Java程序访问出现无法连接。 -e KAFKA_LISTENERSPLAINTEXT://0.0.0.0:9002 配置kafka的监听端口-v /etc/localtime:/etc/localtime 容器时间同步虚拟机的时间# 1. 下载docker镜像 docker pull wurstmeister/zookeeper docker pull wurstmeister/kafka# 2. 启动zookeeper (单机方式) docker run -d --name zookeeper -p 2181:2181 -t wurstmeister/zookeeper# 3. 启动kafka (单机方式) 注下面启动命令中的IP(192.168.213.213)需要更换为你的服务器/虚拟机的静态IP docker run -d --name kafka \ -p 9092:9092 \ -e KAFKA_BROKER_ID0 \ -e KAFKA_ZOOKEEPER_CONNECT192.168.213.213:2181 \ -e KAFKA_ADVERTISED_LISTENERSPLAINTEXT://192.168.213.213:9092 \ -e KAFKA_LISTENERSPLAINTEXT://0.0.0.0:9092 wurstmeister/kafka# 4. 测试搭建的kafka是否可以正常进行发布/消费消息 如果使用的是xshell麻烦开两个窗口一个provider发布消息一个consumer消费消息第一个窗口 4.1. 查看当前正在运行的容器(zookeeper和kafka) docker ps 4.2. 进入kafka容器 docker exec -it 容器id /bin/bash 4.3. 进入kafka脚本启动目录 cd /opt/kafka_2.13-2.8.1/bin 4.4. 启动发布消息脚本并创建test的topic ./kafka-console-producer.sh --broker-list localhost:9092 --topic test 4.5. 上条命令执行后现在你可以发送消息了等一会consumer脚本启动后就可以看到消费到的消息了第二个窗口 4.1. 查看当前正在运行的容器(zookeeper和kafka) docker ps 4.2. 进入kafka容器 docker exec -it 容器id /bin/bash 4.3. 进入kafka脚本启动目录 cd /opt/kafka_2.13-2.8.1/bin 4.4. 启动发布消息脚本并创建test的topic kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning 4.5. 上条命令执行后现在你可以看到刚才发送的消息了mqtt # http://t.csdn.cn/PqPEo docker run -dit --name emqx -p 18083:18083 -p 1883:1883 -p 8083:8083 -p 8084:8084 emqx/emqx:latest 浏览器登录: http://192.168.3.12:18083/#/dashboard/overview admin 密码是public18083 管理控制端口 1883 mqtt协议端口 8083 MQTTwebSocket端口# 认证方式 https://blog.csdn.net/weixin_43869518/article/details/127558282 mqtt客户端校验 # 注意: 明文把加盐改成disableCREATE TABLE IF NOT EXISTS mqtt_user (id int(11) unsigned NOT NULL AUTO_INCREMENT,username varchar(100) DEFAULT NULL,password varchar(100) DEFAULT NULL,salt varchar(35) DEFAULT NULL,is_superuser tinyint(1) DEFAULT 0,created datetime DEFAULT NULL,PRIMARY KEY (id),UNIQUE KEY mqtt_username (username) ) ENGINEInnoDB DEFAULT CHARSETutf8mb4;然后在创建两条 客户端授权 CREATE TABLE IF NOT EXISTS mqtt_user (id int(11) unsigned NOT NULL AUTO_INCREMENT,username varchar(100) DEFAULT NULL,password_hash varchar(100) DEFAULT NULL,salt varchar(35) DEFAULT NULL,is_superuser tinyint(1) DEFAULT 0,created datetime DEFAULT NULL,PRIMARY KEY (id),UNIQUE KEY mqtt_username (username) ) ENGINEInnoDB DEFAULT CHARSETutf8mb4;web的客户端发送主题消息, 单片机接收信息 游戏 docker pull oldiy/dosgame-web-docker:latestdocker run -dit --name d -p 262:262 oldiy/dosgame-web-docker:latest深度学习环境 docker run -it -p 8888:8888 --name jupyter --ipchost ufoym/deepo:all-jupyter jupyter notebook --no-browser --ip0.0.0.0 --allow-root --NotebookApp.token --notebook-dir/rootdocker run -it -p 8888:8888 --name jupyter --ipchost ufoym/deepo:all-jupyter homeassistant https://xiaolee.xyz/categories/homeassistant docker run -itd \ --name hass \ --restart unless-stopped \ --privilegedtrue \ --nethost \ -e TZAsia/Shanghai \ -v /share/hass/config:/config \ homeassistant/home-assistant:2023.3下载hase极速版 https://gitee.com/hacs-chinamkdir -p /home/zjq/share/hass/config/custom_components/hacs mv hacs.zip /home/zjq/share/hass/config/custom_components/hacs unzip hacs.zip docker restart hassredis 宝塔里面安装redis7放行端口设置密码和访问ip为0.0.0.0 谁都可以访问就可以访问了 pika 来自香港全球互联8k视频随你看注册及送永久流量地址http://run.weaksharedptr.com/register?share_idbb0ac878-d813-4c7e-9819-15eb43c5e5c4docker run -itd \--restartalways \--name pika \-v /home/zjq/share/pika:/root/file \-p 9221:9221 pikadb/pika:v3.3.6 Ubuntu docker run -itd -p 9221:9221 -p 8030:22 --name pika -v /home/zjq/share/pika:/root/pick -d ubuntu:18.04 /bin/bash# 运行容器 $ docker exec -it pika /bin/bash obs docker run -itd -p 9010:9010 -p 8029:22 --name minio -v /home/zjq/share/minio/data:/data -e MINIO_ROOT_USERzjq -e MINIO_ROOT_PASSWORD密码 minio/minio server /data --console-address :9010饥荒 mkdir ${HOME}/Klei # 创建存放数据有文件夹# 拉取镜像并在前台启动 # 由于Steam要更新根据网络环境可能要等比较久的时间 # 如果实在无法连接再考虑给容器挂个代理下载。但总体不建议容器挂代理因为我不清楚挂代理后steam是连接到服务器的游戏端口还是连到代理的端口上去了取消容器的代理也非常麻烦。 docker run -itd --name dst -p 10999-11000:10999-11000/udp -p 12346-12347:12346-12347/udp jamesits/dst-server jupyter sudo vim /lib/systemd/system/jupyter.service# 写入下面内容--------------------------------------------------------------- [Unit] Descriptionjupyter passwd jupyter密码 Afternetwork.target syslog.target Wantsnetwork.target[Service] Typesimple #启动服务的命令此处写你的frps的实际安装目录 ExecStartnohup jupyter notebook /share/jupyter --allow-root jupyter.log 21 # 后面是展示的目录[Install] WantedBymulti-user.target # --------------------------------------------------------------sudo systemctl start jupyter sudo systemctl enable jupyter sudo systemctl restart jupyter sudo systemctl stop jupyter sudo systemctl status jupyterdocker run -d -p 8888:8888 -p 7022:22 --name jupyter --ipchost ufoym/deepo:all-jupyter jupyter notebook --no-browser --ip0.0.0.0 --allow-root --NotebookApp.token --port8888 --no-browser --notebook-dir/root WeChat reboot docker run -d --name wechatbot -p 3001:3001 \ -e LOGIN_API_TOKEN密码 \ -e RECVD_MSG_APIhttp://192.168.3.12:8080/receive_msg \ dannicool/docker-wechatbot-webhook:latest 0c8605c58c4ac28a664987f43f0ab1b207ae26027fab9ba73196be21e0d228bahttp://192.168.3.12:8080/receive_msg 这是本地端口发送请求docker logs -f wechatbot 游戏 幻兽帕鲁 pasharp/pal_server:latest docker run -dit --name steamcmd --net host cm2network/steamcmd# 在容器内下载安装幻兽帕鲁服务端。 docker exec -it steamcmd bash -c /home/steam/steamcmd/steamcmd.sh login anonymous app_update 2394010 validate quit# 在容器内运行幻兽帕鲁服务端。 docker exec -it steamcmd bash -c /home/steam/Steam/steamapps/common/PalServer/PalServer.sh# 后台执行的 docker exec -itd steamcmd bash -c /home/steam/Steam/steamapps/common/PalServer/PalServer.sh花生壳映射 https://service.oray.com/question/11630.html halo博客搭建 docker run -it -d --name halo -p 8090:8090 --restartunless-stopped -v /share/share/halo:/root/.halo2 halohub/halo:2.12 安装Nginx转发端口到80端口 apt install nginx 安装安卓 sudo apt install cpu-checkerrootzjq:/share/hass/config# kvm-ok INFO: /dev/kvm exists KVM acceleration can be used# 运行容器 http://192.168.3.99:6080 docker run -d -p 6080:6080 -e EMULATOR_DEVICESamsung Galaxy S10 -e WEB_VNCtrue --device /dev/kvm --name android-container budtmo/docker-android:emulator_11.0 # 检测状态 docker exec -it android-container cat device_statuswget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.10/amd64/linux-headers-5.10.0-051000_5.10.0-051000.202012132330_all.deb wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.10/amd64/linux-headers-5.10.0-051000-generic_5.10.0-051000.202012132330_amd64.deb wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.10/amd64/linux-image-unsigned-5.10.0-051000-generic_5.10.0-051000.202012132330_amd64.deb wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.10/amd64/linux-modules-5.10.0-051000-generic_5.10.0-051000.202012132330_amd64.deb
http://www.tj-hxxt.cn/news/137299.html

相关文章:

  • 大型网站的设计权威的锦州网站建设
  • 网站系统制作教程小程序做网站
  • 大麦网网站建设的功能定位网页美工设计网课
  • 公司网站现状win10 iis wordpress
  • 网站建设期末论文苏州做网站怎么样
  • 网站无搜索结果页面怎么做中国建设工程造价协会网站
  • 怎么做个手机版的网站网页怎么做才美观
  • 长春网络建站企业网站 源码 开源
  • 化妆品网站后台泰安外贸网站建设公司
  • 浙江网站建设有哪些seo发帖软件
  • 有个网站叫设计什么网站建设过程中要怎么打开速度
  • 国内工业设计网站台州网站开发
  • 本网站建设中网站设计中的div是什么
  • 大连手机自适应网站建设报价seo的网站
  • 有人做网站吗建筑网站汇总
  • 自助建网站教程做短视频必备的网站
  • 陕西住房和城乡建设厅网站苏州工业园区公积金
  • sns社交网站.net源码千部小黄油资源百度云
  • 企业网站搜索引擎推广方法襄阳营销型网站
  • 在线服务器网站网站咨询弹窗怎么做
  • 龙岗大运做网站的公司wordpress建站多少钱
  • 山西网站建设价格山东手机网站建设公司
  • 网站的尺寸大型网站开发实战
  • 网站建设贰金手指下拉贰拾wordpress设置个人头像
  • 网站建设步骤图片素材网页开发者选项在哪里
  • 做淘宝客如何建自己的网站国外市场网站推广公司
  • html5效果网站有没有便宜的注册代理
  • 织梦网站突然打开很慢职业生涯规划网站开发背景
  • 建设网站cms网上推广兼职
  • 网站建设愿景品牌网站建设平台