做网站泊头网站怎么做桌面快速链接

张小明 2026/1/20 1:37:40
做网站泊头,网站怎么做桌面快速链接,网站建设专业可行性分析,提供手机自适应网站建设维护这篇文章来源于我自己搭建和调试 Docker Compose 时的各种实践和踩坑记录 是一点点摸索出来的经验总结#xff1b;如果你发现有更好的做法 或者某些地方值得讨论 欢迎在评论区留言#xff1b;一起把这些细节理顺 把 Compose 玩得更顺手#xff1b; 目录结构 config/ ├──…这篇文章来源于我自己搭建和调试 Docker Compose 时的各种实践和踩坑记录 是一点点摸索出来的经验总结如果你发现有更好的做法 或者某些地方值得讨论 欢迎在评论区留言一起把这些细节理顺 把 Compose 玩得更顺手目录结构config/├── docker-compose.yml ← 我们的核心我文件├── .env.example ← 这个是分享的配置示例├── .env ← 这个是我们自己本地的文件port/username/password...├── Dockerfile ←帮你把 docker-compose.yml 和 .env.example 打包成一个镜像的docker-compose.ymlversion: 3.8 services: # MySQL mysql: image: mysql:8.0 container_name: mysql-nacos env_file: - .env environment: MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD} MYSQL_DATABASE: ${MYSQL_DATABASE} MYSQL_USER: ${MYSQL_USER} MYSQL_PASSWORD: ${MYSQL_PASSWORD} ports: - 3311:3306 volumes: - ./mysql-data:/var/lib/mysql networks: - config_network restart: always networks: config_network: driver: bridgeversion: 3.8:这个可有可无这个是 Docker Compose v1/v2 时期的一个规范号从 Docker Compose V2 开始现在所有 Docker Desktop 都是 V2 现在已经被官方废弃了写不写都行看个人习惯services核心声明这个以后可以在这里面写你需要拉取的服务了这些属性都是什么mysql: image: mysql:8.0image要运行的镜像 → 官方 MySQL 8.0container_name: mysql-nacoscontainer_name你给容器取的名字 方便 docker ps 里识别;env_file: - .envenv_file从当前目录加载.env文件里的变量 比如密码、数据库名;environment: MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD} MYSQL_DATABASE: ${MYSQL_DATABASE} MYSQL_USER: ${MYSQL_USER} MYSQL_PASSWORD: ${MYSQL_PASSWORD}environment把.env里面的变量注入到容器内部;等于在容器里运行时自动执行MYSQL_ROOT_PASSWORD你的密码这些是 MySQL 官方环境变量 用来初始化数据库ports: - 3311:3306ports把宿主机 → 容器的端口做映射33113306你本机访问容器的 MySQL别人访问你的 MySQLip:3311容器内部服务访问 MySQLmysql:3306volumes: - ./mysql-data:/var/lib/mysqlvolumes数据挂载左边你电脑上的mysql-data右边容器内 MySQL 数据目录容器删了 数据不丢; MySQL 占用空间在宿主机 ;networks: - config_networknetworks让 mysql 和 其他的服务在同一个网络里可以互相访问相当于给它们都加入了一个局域网restart: alwaysrestart 策略容器异常退出会自动重启服务器重启后自动启动.env.env是 Docker Compose 运行时真正加载的环境变量文件也就是说 compose 启动容器的时候依赖的所有变量都从.env拿.env里要写什么就是所有 Compose 里用到的${XXX}值, compose 里包含:MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD} MYSQL_DATABASE: ${MYSQL_DATABASE} MYSQL_USER: ${MYSQL_USER} MYSQL_PASSWORD: ${MYSQL_PASSWORD} SPRING_DATASOURCE_URL: ${NACOS_JDBC_URL} SPRING_DATASOURCE_USERNAME: ${NACOS_DB_USER} SPRING_DATASOURCE_PASSWORD: ${NACOS_DB_PASS}所以.env应该长这样# MySQL MYSQL_ROOT_PASSWORD你的root密码 MYSQL_DATABASE你的数据库名 MYSQL_USER你的用户名 MYSQL_PASSWORD你的用户密码 # NACOS 使用 MySQL 连接 NACOS_JDBC_URLjdbc:mysql://mysql-nacos:3306/nacos?characterEncodingutf8connectTimeout1000socketTimeout3000autoReconnecttrueuseSSLfalseserverTimezoneAsia/Shanghai NACOS_DB_USER你的数据库用户名 NACOS_DB_PASS你的数据库密码.env.example它是一个 示例环境变量文件 作用很简单用来告诉别人 .env 应该怎么写、有哪些变量需要填真正运行 Compose 的时候 Docker 只认.env默认或你手动指定的env_file.env.example 不会被 Docker 读取 它就是给人看的模板文件文件用途.env真正执行的环境变量自己本地用.env.example提供给别人参考的“模板”不包含敏感值Dockerfiledockerfile是什么一句话Dockerfile 告诉 Docker我要怎么做一个镜像dockerfile文件FROM nginx:latest WORKDIR /share COPY docker-compose.yml . COPY .env.example . CMD [sh, -c, tar -czf - *]它的作用就是帮你把 docker-compose.yml 和 .env.example 打包成一个镜像方便分享Dockerfile 就像食谱FROM基底我选择了 nginx 镜像 仅仅是为了方便本地就有nginx:latest,无需再去拉取 正常应该是为FROM alpine 但是这个需要从 Docker Hub 拉基础镜像本地没 alpine它就要从国外拉 这个就需要魔法了这个时候就有人问了 博主博主 我没有nginx也没有魔法怎么办呢我搜了一下可以替换成FROM debian:stable-slim RUN apt-get update apt-get install -y tar WORKDIR /share COPY docker-compose.yml . COPY .env.example . CMD [sh, -c, tar -czf - *]这个我没有试过 可以试试 如果不行也没有魔法的情况下就下个nginx试试吧 我把代码放在下面了version: 3.8 services: # MySQL mysql: image: mysql:8.0 container_name: mysql-nacos env_file: - .env environment: MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD} MYSQL_DATABASE: ${MYSQL_DATABASE} MYSQL_USER: ${MYSQL_USER} MYSQL_PASSWORD: ${MYSQL_PASSWORD} ports: - 3311:3306 volumes: - ./mysql-data:/var/lib/mysql networks: - config_network restart: always # Nginx nginx: image: nginx:latest container_name: nginx ports: - 80:80 volumes: - ./nginx/conf/nginx.conf:/etc/nginx/nginx.conf - ./nginx/conf.d:/etc/nginx/conf.d - ./nginx/html:/usr/share/nginx/html - ./nginx/log:/var/log/nginx networks: - config_network restart: always networks: config_network: driver: bridgeWORKDIR在容器里工作目录COPY把你的文件塞进镜像里CMD运行容器时做什么你这里是打包成 tar最终你自己写的文件 → 通过 Dockerfile → 变成镜像 → 推到 Docker Hub → 别人拉取你的 compose 镜像构建镜像登录首先需要先登录我们的docker-hub前往docker-hub登录构建登陆后本地执行命令docker build -t yourname/compose-share:1.0 .注意这里是在目录config执行的参考目录结构这里的“.”指的是所在的这个文件夹docker build -t 你docker-hub登陆的名字 / 你取的名字这个前面一定要是登录的名字 不然到时候push上去会有认证的问题执行以后会弹出类似这样此时你就构建成功了 接下来就要执行docker login因为我们前面登陆过了的话就会自己去验证弹出这样的也是登录成功了推送接下来我们执行推送上去的命令docker push yourname/compose-share:1.0执行后弹出就是推上去成功了如何查看点击前往docker-hub查看打开→我的中心这里可以查看我们上传的所有的镜像如何修改名字有人又问了博主博主 我想改这个镜像的名字怎么办好问题依旧在我们的仓库内部打开因为当前docker-hub不支持修改名字 那么我们就需要创建一个新的仓库创建完了以后就给自己本地刚刚我们构建好的镜像重新打tagdocker tag yourname/compose-share:1.0 yourname/compose-modify:1.0docker tag 你原来的compose文件构建的 你想要修改的名字docker push yourname/compose-modify:1.0直接推上去即可如何覆盖比如你更新了你的 docker-compose.yml 或 .env.example重新 builddocker build -t yourname/compose-share:1.0 .重新 push直接覆盖docker push yourname/compose-share:1.0完成Docker Hub 上的 1.0 就变成新版本了总结改文件 → build → push → 覆盖同名 tag → 完成更新如何获取你的compose 文件Linux / Macdocker run --rm yourname/compose-share:1.0 compose.tar.gz tar -xzf compose.tar.gzWindows PowerShelldocker run --rm yourname/compose-share:1.0 compose.tar.gz tar -xzf compose.tar.gzWindows CMDdocker run --rm yourname/compose-share:1.0 compose.tar.gz tar -xf compose.tar.gz执行完后他们的目录里会出现docker-compose.yml.env.example因为我们已经加了Dockerfile所以不需要输出其他的命令了结语如果你能看到这里 真的非常感谢你的时间希望这些实践经验能帮你少踩一些我踩过的坑如果你有新的想法、遇到奇怪的问题、或想讨论更多 Compose 的玩法 随时欢迎在评论区交流你的每一句反馈 都是推动我继续分享的动力祝你部署顺利
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

微信嵌入网站开发超炫网站欣赏

在数字时代,我们的图片库往往分布在复杂的文件夹结构中,手动查找重复图片既耗时又容易遗漏。imagededup作为专业的重复图片查找工具,能够智能扫描多级目录,精准识别重复图片,帮助您节省宝贵的存储空间和整理时间。 【免…

张小明 2026/1/17 21:44:41 网站建设

郑州网站+建设如何免费创建域名

引言在数字化浪潮席卷的当下,教育、招聘、培训等领域对于高效、便捷的考试与答题工具需求日益增长。今天,我们深入剖析一款开源的答题小程序,它不仅集成了考试、刷题、活动答题等多元功能,还凭借前后端完整源码、基于云开发的特性…

张小明 2026/1/19 16:22:13 网站建设

秦皇岛网站制作专家宝山北京网站建设

随着大型语言模型(LLM)技术的飞速发展,我们与AI的交互模式正在经历深刻的变革。从最初的简单问答,到多轮对话,再到如今能够自主规划、执行复杂任务的AI 智能体(Agent),当我们惊叹于A…

张小明 2026/1/17 21:44:42 网站建设

安卓小项目源码免费网站企业官方网站的作用

凌晨两点,城市在沉睡。但在某栋写字楼的地下二层配电室,智能终端捕捉到B3相线路的微妙颤动——电流谐波比正常值高出0.8%,温度曲线出现0.3℃的异常上扬。系统没有拉响警报,而是在数据库的十万个历史案例中找到了相似波形&#xff…

张小明 2026/1/17 21:44:43 网站建设

购物网站建设方案ppt济南网站建设分销商城

Linly-Talker数字人头部转动角度范围有多大? 在虚拟主播、智能客服和在线教育日益普及的今天,一个“眼神灵动、举止自然”的数字人早已不再是科幻电影中的幻想。然而,真正让用户感到“像在与真人对话”的关键,并不只在于高清的面容…

张小明 2026/1/17 21:44:43 网站建设

无锡网站制作电话做网站游戏的网站有哪些

第一章:大模型自动化部署的演进与挑战随着深度学习技术的快速发展,大模型(如LLM、多模态模型)在自然语言处理、图像识别等领域展现出强大能力。然而,将这些参数量庞大的模型高效、稳定地部署到生产环境,已成…

张小明 2026/1/17 21:44:46 网站建设