Featured image of post 使用 Gitlab page 建立私密的静态部落格网站

使用 Gitlab page 建立私密的静态部落格网站

用 Gitlab page 可以将网站建立在 Gitlab 中,让自己的部落格架设在免费的 gitlab 空间

Gitlab 与 Github 都有提供静态空间页面给我们放上静态的 html, css, js 档案,可以变成一个静态页面供网友存取,但 Github pages 的空间如果要变成私密的方式,不想要让其他人可以直接下载你整包的网站 html 的话,只能 付费 才能够有这个功能,Gitlab pages 则是免费就可以使用私密的方式架设你的网站,不需要额外付费

建立 Gitlab Pages 目录

在你的专案中建立 public 目录,并将你要部署到 GitLab Pages 的档案全部放在这个 public 目录中,这个目录的 index.html 是网站的进入点

GitLab Pages

设定 Gitlab Pages 部署方式

建立 .gitlab-ci.yml 档案,在 artifacts 设定 Gitlab pages 的目录,并设定只有在 main 的分支才会部署

# .gitlab-ci.yml
image: alpine:latest

pages:
  stage: deploy
  script:
    - echo 'Do nothing'
  # gitlab page 目录
  artifacts:
    paths:
      - public
  # 只有在 main 分支的 public 目录才会被部署
  only:
    - main

部署 Gitlab Pages

将建立的网站 public 目录及 .gitlab-ci.yml 档案 push 到 Gitlab,然后到 Repo 的 CI/CD > Piplines 可以看到会立即执行部署的指令,看到状态变更为 passed 就表示执行成功了

GitLab Pages

检视部署的 Gitlab Pages

在 Repo 的 Settings > Pages 那边可以看到你的 Gitlab Pages 的网址,预设是 https://<帐号>.gitlab.io/<专案位置>,从这裡就可以看到你部署上去的页面了

GitLab Pages

设定 Gitlab Pages 存取权限

Gitlab Pages 可以做存取的限制

  1. Repo 的成员才可以看到此页面
  2. 每个人都可以看到此页面

GitLab Pages 预设是「Repo 的成员才可以看到此页面」,若你想要设定 Gitlab 存取权限的话,可以到 Setting > General 页面,然后在页面下方的 Visibility, project features, permissions 区块点选 Expand 展开权限设定

GitLab Pages GitLab Pages

Visibility, project features, permissions 下方找到 Pages 区块,选择存取的权限按下储存即可

  • Only Project Members
  • Everyone

这样就可以公开您的 Gitlab Pages 在网路上给大家存取了

GitLab Pages

自订网址 & SSL 凭证

如果你要自订你网站的网址,可以点选右上方的 New Domain 按钮,建立页面网址,在页面中输入你要的网址,并请 Gitlab 帮您申请免费的 Let’s Encrypt SSL 凭证

GitLab Pages GitLab Pages

建立完成后将 DNS 设定至您的设定内,并做验证即可,验证完成后就可以看到您的页面可以透过自己的网址去连线了

GitLab Pages

Cloudflare DNS SSL 凭证

若你使用 Cloudflare 做你的 DNS 管理,必须要在 SSL 设定设定为 full 才能够正确的取得 Gitlab Pages 的免费自订网址 SSL 网址凭证

GitLab Pages

参考资料

Donate KJ 贊助作者喝咖啡

如果這篇文章對你有幫助的話,可以透過下面支付方式贊助作者喝咖啡,如果有什麼建議或想說的話可以贊助並留言給我
If this article has been helpful to you, you can support the author by treating them to a coffee through the payment options below. If you have any suggestions or comments, feel free to sponsor and leave a message for me!
方式 Method 贊助 Donate
PayPal https://paypal.me/kejyun
綠界 ECPay https://p.ecpay.com.tw/AC218F1
歐付寶 OPay https://payment.opay.tw/Broadcaster/Donate/BD2BD896029F2155041C8C8FAED3A6F8
All rights reserved,未經允許不得隨意轉載
Built with Hugo
主题 StackJimmy 设计