Hugo
This commit is contained in:
1 parent
ddf6b5a54c
commit
2f767a1826
5 files changed
+91
No files matched your search
@@ -0,0 +1,23 @@
|
|||||||
|
FROM alpine:latest
|
||||||
|
|
||||||
|
# Install dependencies
|
||||||
|
RUN apk add --no-cache git curl tar
|
||||||
|
|
||||||
|
# Download and install Hugo
|
||||||
|
RUN HUGO_VERSION=$(curl -s https://api.github.com/repos/gohugoio/hugo/releases/latest | grep 'tag_name' | cut -d\" -f4) && \
|
||||||
|
curl -L https://github.com/gohugoio/hugo/releases/download/${HUGO_VERSION}/hugo_extended_${HUGO_VERSION#v}_Linux-64bit.tar.gz | tar -xz && \
|
||||||
|
mv hugo /usr/local/bin/
|
||||||
|
|
||||||
|
# Create a new Hugo site
|
||||||
|
RUN hugo new site mysite
|
||||||
|
|
||||||
|
# Add Decap CMS
|
||||||
|
WORKDIR /mysite/static/admin
|
||||||
|
RUN git clone https://github.com/decapcms/decap.git .
|
||||||
|
|
||||||
|
# Expose volume for Hugo site
|
||||||
|
VOLUME /mysite
|
||||||
|
|
||||||
|
# Serve the site
|
||||||
|
EXPOSE 1313
|
||||||
|
CMD ["hugo", "server", "--bind=0.0.0.0"]
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
ssh -p 2222 -o StrictHostKeyChecking=no git@127.0.0.1 "SSH_ORIGINAL_COMMAND=\"$SSH_ORIGINAL_COMMAND\" $0 $@"
|
||||||
@@ -0,0 +1,19 @@
|
|||||||
|
server {
|
||||||
|
|
||||||
|
listen 80;
|
||||||
|
server_name {{ http_host }};
|
||||||
|
|
||||||
|
# location /_/static {
|
||||||
|
|
||||||
|
# alias /path/to/gitea/public;
|
||||||
|
# }
|
||||||
|
|
||||||
|
location / {
|
||||||
|
proxy_pass http://localhost:3000;
|
||||||
|
proxy_set_header Host $host;
|
||||||
|
proxy_set_header X-Real-IP $remote_addr;
|
||||||
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||||
|
proxy_set_header X-Forwarded-Proto $scheme;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@@ -0,0 +1,39 @@
|
|||||||
|
---
|
||||||
|
- hosts: all
|
||||||
|
become: yes
|
||||||
|
tasks:
|
||||||
|
- name: Get the latest Hugo release
|
||||||
|
get_url:
|
||||||
|
url: https://github.com/gohugoio/hugo/releases/latest/download/hugo_extended_{{ ansible_system }}-64bit.tar.gz
|
||||||
|
dest: /tmp/hugo.tar.gz
|
||||||
|
mode: '0755'
|
||||||
|
|
||||||
|
- name: Extract Hugo binary
|
||||||
|
unarchive:
|
||||||
|
src: /tmp/hugo.tar.gz
|
||||||
|
dest: /tmp
|
||||||
|
remote_src: yes
|
||||||
|
|
||||||
|
- name: Move Hugo binary to /usr/local/bin
|
||||||
|
command: mv /tmp/hugo /usr/local/bin/hugo
|
||||||
|
|
||||||
|
- name: Check if Hugo project exists
|
||||||
|
stat:
|
||||||
|
path: "{{ host_directory }}"
|
||||||
|
register: hugo_project
|
||||||
|
|
||||||
|
- name: Create new Hugo project
|
||||||
|
command: hugo new site "{{ host_directory }}"
|
||||||
|
when: not hugo_project.stat.exists
|
||||||
|
|
||||||
|
- name: Add Decap CMS with Gitea integration
|
||||||
|
block:
|
||||||
|
- name: Clone Decap CMS
|
||||||
|
git:
|
||||||
|
repo: 'https://github.com/decapcms/decap.git'
|
||||||
|
dest: "{{ host_directory }}/themes/decap"
|
||||||
|
|
||||||
|
- name: Configure Gitea integration
|
||||||
|
lineinfile:
|
||||||
|
path: "{{ host_directory }}/config.toml"
|
||||||
|
line: 'theme = "decap"'
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
---
|
||||||
|
http_host: "hugo.tanshu.com"
|
||||||
|
http_conf: "hugo.tanshu.com.conf"
|
||||||
|
http_url: "https://hugo.tanshu.com"
|
||||||
|
|
||||||
|
container_name: gitea
|
||||||
|
container_image: gitea/gitea:latest
|
||||||
|
|
||||||
Reference in new issue
Block a user