本地部署Docker文档(部署在docker)
liuian 2025-05-03 15:15 30 浏览
由于访问 https://docs.docker.com/ 文档慢,直接本地部署官方文档
如果不想执行以下操作,也可以直接使用官方文档仓库地址提供的 Dockerfile 和 compose.yaml 进行操作
以下操作环境为Windows系统,根据 Dockerfile 相关操作来生成 html 页面
Dockerfile地址:
https://github.com/docker/docs/blob/main/Dockerfilecompose.yaml地址:
https://github.com/docker/docs/blob/main/compose.yaml
1、安装 go
下载地址:https://go.dev/dl/
当前版本:1.22.22、安装 nodejs
下载地址:https://nodejs.org/en/download/package-manager
当前node版本:20.12.2
当前npm版本:10.5.03、安装 hugo
hugo官网:https://gohugo.io/
下载地址:https://github.com/gohugoio/hugo/releases/tag/v0.133.0
当前版本:0.133.04、操作命令
# 根据 package.json 文件下载依赖到 node_modules 目录
npm install
# 生成 html 页面,指定目录为 out,网站url为空
hugo --minify -d out -b ""
# 生成 pagefind,指定源文件目录 out,指定输出文件目录 pagefind
npx pagefind@v1.1.0 --site "out" --output-path "pagefind"5、复制文件
html页面:out 目录
网页内容查询文件:pagefind 目录
示例:
可以将 out 目录的内容复制到 xxx/public下,然将 pagefind 目录复制到 public 目录下
ps:也就是 pagefind 目录下的文件在 out 目录下6、部署
可以使用不同方式部署
6.1、使用nginx搭建静态服务
如使用phpstudy、宝塔等软件6.2、编写文件服务
1)在 步骤5 所在目录创建 main.go 文件,编写 http 服务
2)然后执行 `go run main.go`
3)浏览器访问 `http://127.0.0.1:1234/`其中main.go内容为:
package main
import (
"fmt"
"io/ioutil"
"net/http"
"os"
"path/filepath"
"strings"
)
// 如有错误,请根据实际情况修改下面代码
func main() {
// http.Handle("/", http.FileServer(http.Dir("/")))
http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
uri := r.RequestURI
// 移除问号
pos := strings.LastIndex(uri, "?")
if pos > -1 {
uri = uri[:pos]
}
// 以 / 结尾,自动追加 index.html
if strings.HasSuffix(uri, "/") {
uri += "index.html"
}
// 获取文件绝对路径
curPwd, _ := os.Getwd()
absPath := filepath.Join(curPwd, "\\", uri)
absPath = filepath.FromSlash(absPath)
// 读取文件内容
b, err := ioutil.ReadFile(absPath)
if err != nil {
w.Write(nil)
return
}
// 显示异常,请添加相应的content-type
contentTypeMap := map[string]string{
// ".html": "text/html",
".css": "text/css",
".js": "application/javascript",
".ico": "image/x-icon",
".svg": "image/svg+xml",
// ".webp": "image/webp",
".json": "application/json",
}
pos = strings.LastIndex(absPath, ".")
suffix := absPath[pos:]
if v, ok := contentTypeMap[suffix]; ok {
w.Header().Add("content-type", v)
}
w.Write(b)
})
fmt.Println("http server running on http://127.0.0.1:1234/")
http.ListenAndServe("0.0.0.0:1234", nil)
}6.3、其他方式
略7、启动服务
8、浏览器访问
9、相关代码
编译生成的代码:
https://gitcode.net/janthinasnail/docs-docker/-/tree/build-on-windows
docker文档(可以用于部署):
https://gitcode.net/janthinasnail/docs-docker/-/tree/pages-on-windows
源文档地址:https://docs.docker.com/
相关推荐
- 新冠疫苗接种查询(新冠疫苗接种查询不到了)
-
银川市疫苗接种信息在“我的宁夏”app里查询。打开“我的宁夏”app,打开“健康码”选项,然后打开“疫苗接种查询”,就可以查询到你的疫苗接种信息了。如果你接种了吗两次疫苗,你的健康码就会镶嵌了金边,只...
- cdr格式文件怎么打开(cdr格式用什么可以打开)
-
cdr是什么文件?cdr文件用什么打开?cdr文件是CorelDraw图像制作软件标准的输出格式,与photoshop(PS)图片设计软件类似都属于图片设计软件,需要打开cdr文件我们就需要先了解C...
- 微软win7系统下载(微软官网window7下载)
-
因为你是按照名称排列的,试着修改一下排序方式,方法是:在桌面空白处右键,排序方式,修改日期这是因为大部分电脑用的都是GHOST系统,该系统在安装后都会向注册表写入自己的“私人信息”,如:风林火山GH...
- xp10下载(Xp10下载破解版)
-
下载win10系统所需要的时间取决于很多因素。首先就是系统本身的大小,一般情况下,纯净版的系统在2.3个g左右,而有一些定制版的系统大小就不好说了,但是删减版的系统可以做到1.7个g左右,系统本身文件...
- 最强神级选择系统(无敌之最强神级选择系统)
-
8.自由高达《机动战士高达SEED》 7.V高达《机动战士高达V》 6.00高达《机动战士高达00》 5.独角兽高达《机动战士高达UC》 4.倒A高达《倒A高达》 3.V2高达《机动战士高...
- 惠普服务器售后电话客服热线
-
售后官网:https://support.hp.com/cn-zh/check-warranty该网站为惠普全新一站式服务支持平台,小惠将为您提供专业的技术解答和产品导购。同时提供全面的自助解决方案...
- win10改成win7界面(win10改为win7界面)
-
1、首先我们打开你的电脑,选择打开左下角的开始菜单。2、打开后就选择设置按钮。3、打开之后就是这个页面往下拉,你就会看见更新,就是红圈圈里面,打开它。4、打开之后就是这个页面。5、然后我们在左侧选择恢...
- win10系统怎么恢复系统还原(win10系统恢复怎么操作)
-
1、开机不断点击F8键,进入系统操作选单,选“最后一次正确配置”,重启电脑,看能否解决。2、开机不断点击F8键,进入系统操作选单,选“安全模式”,如能成功进入,依次单击“开始”→“所有程序”→“附件”...
- 怎么把电脑c盘格式化(怎么把c盘格式化吗)
-
1.在进行c盘格式化之前,必须备份重要的数据,以免数据丢失。2.在格式化c盘之前,确保所有的应用程序和系统文件都已经备份。否则,在进行格式化之后,将需要重新安装操作系统和所有的应用程序。3.如果...
- 中国移动赠送的wifi6路由器(192.168.10.1中国移动路由器)
-
移动tclwifi6路由器很好的。WiFi6路由器远强于WiFi5路由器,值得购买性价比不错。家庭生活中网速慢最主要的原因并非速率,而是穿墙效果。坐在离路由器很近的地方,手机网速一般不会有问题。...
- win官网网址(win官方网站)
-
具体方法如下:打开电脑,在浏览器地址栏输入window,就会进入win中文官网,然后再寻找自己需要的软件,升级包等就可以了。下面是windows官网网址:1http://www.microsoft.c...
- wifi网址登录入口(wifi网址登录入口有哪些)
-
wifi网页登录入口是网关地址192.168.1.1.1.首先检查路由器线路连接(参考前面手机设置路由器部分)2.将电脑Tnternet协议(TCP/IP)属性设置为“自动获取IP地址”和“自...
- 没有驱动程序怎么安装打印机
-
(1)启动电脑进入Windows操作系统,在桌面上单击开始-设置-打印机。(2)用鼠标右单击安装好的打印机图标,在弹出的右键菜单中选择属性,然后单击打印测试页按钮。(3)此时打印机会打出一页信息,从这...
- 一周热门
- 最近发表
- 标签列表
-
- python判断字典是否为空 (50)
- crontab每周一执行 (48)
- aes和des区别 (43)
- bash脚本和shell脚本的区别 (35)
- canvas库 (33)
- dataframe筛选满足条件的行 (35)
- gitlab日志 (33)
- lua xpcall (36)
- blob转json (33)
- python判断是否在列表中 (34)
- python html转pdf (36)
- 安装指定版本npm (37)
- idea搜索jar包内容 (33)
- css鼠标悬停出现隐藏的文字 (34)
- linux nacos启动命令 (33)
- gitlab 日志 (36)
- adb pull (37)
- python判断元素在不在列表里 (34)
- python 字典删除元素 (34)
- vscode切换git分支 (35)
- python bytes转16进制 (35)
- grep前后几行 (34)
- hashmap转list (35)
- c++ 字符串查找 (35)
- mysql刷新权限 (34)
