# wandoubaba的技术文档 wandoubaba是一位很老的PHP程序员,他不是大牛却很喜欢研究程序,随着时间一点一点的积累了一些些技术资料,包括PHP、Docker、Worker(Webman)、RabbitMQ、FreeSWITCH、GoLang、Kubernete(k8s)等等。 ## 系统依赖 - docker - node(npm、npx) ## 项目结构 - `server.sh`:用于管理 Docker 容器的脚本。 - `build.sh`:用于构建 Docker 镜像的脚本。 - `Dockerfile`:定义了 Docker 镜像的构建过程。 - `.env`:环境变量配置文件,用于存储容器和镜像的相关信息。 ## 功能介绍 ### server.sh `server.sh` 脚本用于管理 VitePress 文档网站的 Docker 容器。它支持以下操作: - **start**:启动 VitePress 文档容器,如果容器已存在且正在运行,则会提示相应消息。 - **stop**:停止并删除正在运行的 VitePress 文档容器。 - **restart**:重启容器,包括构建新的镜像和替换容器。 - **clear**:清理容器及其所有同名镜像,执行前会请求用户确认。 #### 使用方法 ```bash ./server.sh start # 启动容器 ./server.sh stop # 停止并删除容器 ./server.sh restart # 构建新镜像并重启容器 ./server.sh clear # 清理容器和所有同名镜像,需确认 ``` ### build.sh `build.sh` 脚本用于构建 `Docker` 镜像。它读取 `Dockerfile` 并根据定义的步骤构建出适用于 `VitePress` 文档的网站镜像。该脚本在开始时会检查必要的文件和依赖环境,确保镜像构建的成功。 ### Dockerfile `Dockerfile` 用于定义 `Docker` 镜像的结构和行为。它指定了基础镜像、安装依赖、复制源代码以及设置启动命令等步骤。该文件是构建 `VitePress` 镜像的基础,`build.sh` 会利用它来生成最终镜像。 ### .env 文件 `.env` 文件用于存储环境变量,包括容器名称、镜像名称和标记等。通过在 `server.sh` 和 `build.sh` 脚本中加载这些变量,可以灵活管理镜像和容器信息。例如,您可以在 `.env` 文件中定义以下变量: ```dotenv CONTAINER_NAME=my-vitepress-docs IMAGE_NAME=my-vitepress-image IMAGE_TAG=latest ``` 这些信息在容器管理和镜像构建过程中被引用,以确保操作一致性。 ## 总结 本项目通过脚本和 Docker 自动化了 VitePress 文档的管理、构建和部署过程,使得文档开发的流程更加高效。您只需根据提供的使用说明即可轻松启动和管理您的文档项目。 如有任何问题,欢迎提问或提交问题反馈。