厦门建设管理局网站/销售怎么找客户源

厦门建设管理局网站,销售怎么找客户源,外贸网站建站m,做网站优化期间能收到网站吗一、环境准备 1. 安装必要软件 Docker Desktop for Windows 下载地址:Docker Desktop: The #1 Containerization Tool for Developers | Docker 安装时勾选"使用 WSL 2 引擎"(推荐) WSL 2(Windows Subsystem for Li…

一、环境准备

1. 安装必要软件

  1. Docker Desktop for Windows

    • 下载地址:Docker Desktop: The #1 Containerization Tool for Developers | Docker

    • 安装时勾选"使用 WSL 2 引擎"(推荐)

  2. WSL 2(Windows Subsystem for Linux)

    • 以管理员身份打开 PowerShell 运行:

      wsl --install
       
  3. VS Code(可选但推荐)

    • 安装 Docker 和 WSL 扩展

2. 验证安装

docker --version
docker-compose --version
wsl -l -v
 

二、项目初始化

1. 创建项目目录结构

/my-go-app
├── /nginx
│   ├── Dockerfile
│   └── nginx.conf
├── Dockerfile
├── docker-compose.yml
├── go.mod
└── main.go
 

2. 初始化 Go 模块

go mod init myapp
 

三、编写 Go 应用

1. 创建简单 HTTP 服务 (main.go)

package mainimport ("fmt""net/http"
)func main() {http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {fmt.Fprintf(w, "Hello from Go app!")})fmt.Println("Server running on port 8080")http.ListenAndServe(":8080", nil)
}
 

四、配置 Docker

1. Go 应用的 Dockerfile

# 第一阶段:构建应用
FROM golang:1.21 AS builder# 设置工作目录
WORKDIR /app# 先复制依赖文件
COPY go.mod go.sum ./# 下载依赖
RUN go mod download# 复制源代码
COPY . .# 构建应用(禁用CGO,静态编译)
RUN CGO_ENABLED=0 GOOS=linux go build -o myapp .# 第二阶段:运行环境
FROM alpine:latest# 安装CA证书(HTTPS需要)
RUN apk --no-cache add ca-certificatesWORKDIR /root/# 从构建阶段复制可执行文件
COPY --from=builder /app/myapp .# 暴露端口
EXPOSE 8080# 运行应用
CMD ["./myapp"]
 

2. Nginx 配置

nginx/nginx.conf

worker_processes auto;events {worker_connections 1024;
}http {# 上游Go应用服务upstream goapp {server app:8080; # 对应docker-compose中的服务名}server {listen 80;server_name localhost;# 静态文件服务(可选)location /static/ {alias /var/www/static/;}# 反向代理配置location / {proxy_pass http://goapp;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;# WebSocket支持(如需)proxy_http_version 1.1;proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection "upgrade";}# 错误页面error_page 500 502 503 504 /50x.html;location = /50x.html {root /usr/share/nginx/html;}}
}
 
nginx/Dockerfile

FROM nginx:alpine# 删除默认配置
RUN rm /etc/nginx/conf.d/default.conf# 复制自定义配置
COPY nginx.conf /etc/nginx/nginx.conf# 复制静态文件(如有)
# COPY static /var/www/staticEXPOSE 80
 

五、Docker Compose 配置

docker-compose.yml

version: '3.8'services:# Go应用服务app:build: .  # 使用当前目录的Dockerfilecontainer_name: go-apprestart: unless-stoppedenvironment:- APP_ENV=production# 开发时可以挂载代码目录# volumes:#   - .:/app# ports:#   - "8080:8080"  # 开发时可以直接访问# Nginx服务nginx:build: ./nginxcontainer_name: nginx-proxyports:- "80:80"  # 映射主机80端口depends_on:- apprestart: unless-stopped
 

六、构建与运行

1. 构建镜像

docker-compose build
 

2. 启动服务

docker-compose up -d
 

3. 查看运行状态

docker-compose ps
 

4. 查看日志

# 查看全部日志
docker-compose logs# 实时查看Go应用日志
docker-compose logs -f app# 实时查看Nginx日志
docker-compose logs -f nginx
 

七、访问测试

  1. 通过Nginx访问

    • 浏览器打开:http://localhost

    • 应显示 "Hello from Go app!"

  2. 直接访问Go应用(开发时):

    • 修改docker-compose.yml取消app的ports注释

    • 浏览器打开:http://localhost:8080

八、开发环境优化

1. 热重载配置

  1. 安装Air热重载工具:

go install github.com/cosmtrek/air@latest
 
  1. 修改docker-compose.yml:

services:app:command: airvolumes:- .:/appenvironment:- APP_ENV=development
 

2. 文件监视问题解决

Windows文件系统性能问题解决方案:

  1. 将项目移动到WSL2文件系统:

# 在WSL中创建目录
wsl
mkdir -p /home/username/projects/my-go-app
exit# 在Windows中访问
\\wsl$\Ubuntu\home\username\projects\my-go-app
 
  1. 或配置Docker Desktop:

    • 设置 -> Resources -> File Sharing

    • 添加项目目录

九、生产环境建议

  1. HTTPS配置

    • 使用Let's Encrypt免费证书

    • 修改nginx.conf添加SSL配置

  2. 多阶段构建优化

    # 在Go的Dockerfile中添加
    RUN go install -tags 'postgres' -v ./...
     
  3. 健康检查

    healthcheck:test: ["CMD", "curl", "-f", "http://localhost:8080/health"]interval: 30stimeout: 10sretries: 3
     

十、常见问题解决

  1. 端口冲突

    # 查找占用80端口的进程
    netstat -ano | findstr :80# 结束进程(谨慎操作)
    taskkill /PID <PID> /F
     
  2. 容器无法启动

    # 查看详细错误信息
    docker inspect <container_id> | Select-String -Pattern "Error"
     
  3. 清理Docker资源

    # 停止并删除所有容器
    docker-compose down# 删除未使用的镜像
    docker image prune# 删除所有未使用的资源
    docker system prune -a
     

本教程提供了从零开始到生产部署的完整流程,涵盖了Windows环境下的特殊注意事项,帮助您高效地在Windows上使用Docker部署Go应用和Nginx反向代理。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/75526.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C# .net ai Agent AI视觉应用 写代码 改作业 识别屏幕 标注等

C# net deepseek RAG AI开发 全流程 介绍_c# 向量处理 deepseek-CSDN博客 视觉多模态大模型 通义千问2.5-VL-72B AI大模型能看懂图 看懂了后能干啥呢 如看懂图 让Agent 写代码 &#xff0c;改作业&#xff0c;识别屏幕 标注等等。。。 据说是目前最好的免费图片识别框架 通…

大模型应用开发之大模型工作流程

一&#xff1a;大模型的问答工作流程 1.1: 分词和向量化 如上图所示&#xff0c;我们如果让大模型去回答问题&#xff0c;首先我们会输入一些文字给到大模型&#xff0c;大模型本质上是个数学模型&#xff0c;它是理解不了人类的整句话的&#xff0c;所以它会把我们的对应的句…

12届蓝桥杯—货物摆放

货物摆放 题目描述 小蓝有一个超大的仓库&#xff0c;可以摆放很多货物。 现在&#xff0c;小蓝有 nn 箱货物要摆放在仓库&#xff0c;每箱货物都是规则的正方体。小蓝规定了长、宽、高三个互相垂直的方向&#xff0c;每箱货物的边都必须严格平行于长、宽、高。 小蓝希望所…

批量优化与压缩 PPT,减少 PPT 文件的大小

我们经常能够看到有些 PPT 文档明明没有多少内容&#xff0c;但是却占用了很大的空间&#xff0c;存储和传输非常的不方便&#xff0c;这时候通常是因为我们插入了一些图片/字体等资源文件&#xff0c;这些都可能会导致我们的 PPT 文档变得非常的庞大&#xff0c;今天就给大家介…

导游职业资格考试:从迷茫到清晰的备考指南

当你决定报考导游职业资格考试时&#xff0c;可能会感到有些迷茫&#xff0c;不知道从何处入手。别担心&#xff0c;这份备考指南将带你从迷茫走向清晰。​ 第一步&#xff0c;全面了解考试。导游职业资格考试分为笔试和面试。笔试的四个科目各有特点&#xff0c;《政策与法律…

【BFS】《BFS 攻克 FloodFill:填平图形世界的技术密码》

文章目录 前言例题一、 图像渲染二、 岛屿数量三、岛屿的最大面积四、被围绕的区域 结语 前言 什么是BFS&#xff1f; BFS&#xff08;Breadth - First Search&#xff09;算法&#xff0c;即广度优先搜索算法&#xff0c;是一种用于图或树结构的遍历算法。以下是其详细介绍&am…

Linux安装MySQL数据库并使用C语言进行数据库开发

目录 一、前言 二、安装VMware运行Ubuntu 1.安装VMware 2.使用VMware打开Ubuntu 三、配置VMware使用网卡 1.添加NAT网卡 四、Linux下安装MySQL数据库 五、安装MySQL开发库 六、演示代码 sql_connect.c sql_connect.h main.c中数据库相关代码 结尾 一、前言 由于最…

常见中间件漏洞之一 ----【Tomcat】

中间件Tomcat介绍&#xff1a; tomcat是⼀个开源⽽且免费的jsp服务器&#xff0c;默认端⼝ : 8080&#xff0c;属于轻量级应⽤服务器。它可以实现 JavaWeb程序的装载&#xff0c;是配置JSP&#xff08;Java Server Page&#xff09;和JAVA系统必备的⼀款环境。 在历史上也披露…

javaweb自用笔记:Mybatis

目录 mybatis 配置sql书写提示 JDBC 数据库连接池 lombok mybatis 只需要定义Mapper接口就好&#xff0c;不需要有实现类&#xff0c;因为框架底层会自动生成实现类 配置sql书写提示 JDBC 数据库连接池 lombok XML映射文件 动态SQL

比手动备份快 Iperius全自动加密备份,NAS/云盘/磁带机全兼容

IperiusBackupFull是一款专为服务器和工作站设计的备份解决方案&#xff0c;它同时也是一款针对Windows 7/8/10/11/Server系统的简洁且可靠的备份软件。该软件支持增量备份、数据同步以及驱动器镜像&#xff0c;确保能够实现完全的系统恢复。在备份存储方面&#xff0c;Iperius…

mapbox进阶,添加鹰眼图控件

👨‍⚕️ 主页: gis分享者 👨‍⚕️ 感谢各位大佬 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍⚕️ 收录于专栏:mapbox 从入门到精通 文章目录 一、🍀前言1.1 ☘️mapboxgl.Map 地图对象1.2 ☘️mapboxgl.Map style属性1.3 ☘️mapboxgl-minimap 鹰眼控件二、🍀添加…

亮数据爬取API爬取亚马逊电商平台实战教程

前言 在当今数据驱动的商业环境中&#xff0c;企业需要快速、精准地获取互联网上的公开数据以支持市场分析、竞品调研和用户行为研究。然而&#xff0c;传统的手动网页爬取方式面临着诸多挑战&#xff1a;IP封锁、验证码干扰、网站结构频繁变更&#xff0c;以及高昂的运维成本…

“城市超级智能体”落地,联想智慧城市4.0“功到自然成”

作者 | 曾响铃 文 | 响铃说 交通摄像头捕捉到车流量数据&#xff0c;进入一套“自动化”的城市整体管理体系中&#xff0c;交通路况信息、天气变化情况以及城市大型活动安排等看似分散的数据被整合&#xff0c;根据预测的路况精准调控交通信号灯&#xff0c;让自动驾驶清扫车…

计算机复试面试

数据库 1.设计过程/设计步骤 1.需求分析&#xff1a;明确客户需求&#xff0c;确定系统边界&#xff0c;生成数据字典 2.概念结构设计&#xff1a;将用户需求抽象为概念模型&#xff0c;绘制e-r图 3.逻辑结构设计&#xff1a;将e-r图转化为dbms相符合的逻辑结构&#xff0c;db…

模型 拆屋效应

系列文章分享模型&#xff0c;了解更多&#x1f449; 模型_思维模型目录。先过分后合理&#xff0c;易被接受。 1 拆屋效应的应用 1.1 高端手表销售案例 一、案例背景 在高端手表销售领域&#xff0c;销售人员面临顾客对价格敏感且购买决策谨慎的挑战。如何引导顾客接受较高…

Windows系统下Pycharm+Minianaconda3连接教程【成功】

0.引言 PycharmMinianaconda3开发组合的好处 优点类别具体优点描述环境管理便捷独立环境创建 环境复制与共享Miniconda3可创建多独立Python环境&#xff0c;支持不同版本与依赖&#xff0c;避免冲突。 能复制、分享环境配置&#xff0c;方便团队搭建相同开发环境。依赖管理高…

python每日十题(10)

在Python语言中&#xff0c;源文件的扩展名&#xff08;后缀名&#xff09;一般使用.py。 保留字&#xff0c;也称关键字&#xff0c;是指被编程语言内部定义并保留使用的标识符。Python 3.x有35个关键字&#xff0c;分别为&#xff1a;and&#xff0c;as&#xff0c;assert&am…

Clio:具备锁定、用户认证和审计追踪功能的实时日志记录工具

在网络安全工具不断发展的背景下&#xff0c;Clio 作为一款革命性的实时日志记录解决方案&#xff0c;由 CyberLock Technologies 的网络安全工程师开发&#xff0c;于 2025 年 1 月正式发布。这款先进的工具通过提供对系统事件的全面可见性&#xff0c;同时保持强大的安全协议…

哈尔滨工业大学DeepSeek公开课人工智能:大模型原理 技术与应用-从GPT到DeepSeek|附视频下载方法

导 读INTRODUCTION 今天继续哈尔滨工业大学车万翔教授带来了一场主题为“DeepSeek 技术前沿与应用”的报告。 本报告深入探讨了大语言模型在自然语言处理&#xff08;NLP&#xff09;领域的核心地位及其发展历程&#xff0c;从基础概念出发&#xff0c;延伸至语言模型在机器翻…

web爬虫笔记:js逆向案例十一 某数cookie(补环境流程)

web爬虫笔记:js逆向案例十一 某数cookie(补环境流程) 一、获取网页数据请求流程 二、目标网址、cookie生成(逐步分析) 1、目标网址:aHR0cHM6Ly9zdWdoLnN6dS5lZHUuY24vSHRtbC9OZXdzL0NvbHVtbnMvNy9JbmRleC5odG1s 2、快速定位入口方法 1、通过脚本监听、hook_cookie等操作可…