Hugoインストール · 9 min read · Oct 19, 2025
Rocky Linux 9にNginxを使ってHugoサイトジェネレーターをインストールする方法

静的サイトは、静的コンテンツやプレーンなHTML、JavaScript、CSSコードのページで構成されています。コンテンツは動的に生成されず、データベースやサーバーサイドの処理を必要としません。このようなサイトは非常に高速で、動的コードやSQLに依存する脆弱性に対して免疫があります。
Hugoは、Goで書かれたオープンソースの静的サイトジェネレーターです。Markdown言語で書かれた投稿をHTMLに変換することでコンテンツを生成します。Hugoには、生成したサイトをホストするための内蔵サーバーも付属しています。また、Amazon S3、GitHubページ、Google Cloud、Netlify、VercelなどでHugoウェブサイトをホストすることもできます。
このチュートリアルでは、Rocky Linux 9で静的ウェブサイトを作成するためにHugoをインストールする方法を探ります。サイトをホストするためにNginxサーバーを使用し、インストールを保護するためにLet’s Encrypt SSL証明書を使用します。
前提条件
- Rocky Linux 9を実行しているサーバー。
- sudo権限を持つ非rootユーザー。
- サーバーを指す完全修飾ドメイン名(FQDN)。ここでは、
hugo.example.comをドメイン名として使用します。 - すべてが更新されていることを確認してください。
$ sudo dnf update - 基本的なユーティリティパッケージをインストールします。いくつかはすでにインストールされているかもしれません。
$ sudo dnf install wget curl nano unzip yum-utils tree -y
ステップ1 - ファイアウォールの設定
最初のステップはファイアウォールの設定です。Rocky LinuxはFirewalldファイアウォールを使用します。ファイアウォールの状態を確認します。
$ sudo firewall-cmd --state
running
ファイアウォールは異なるゾーンで機能し、パブリックゾーンがデフォルトで使用されます。ファイアウォールでアクティブなすべてのサービスとポートをリストします。
$ sudo firewall-cmd --permanent --list-services
次の出力が表示されるはずです。
cockpit dhcpv6-client ssh
Wiki.jsは機能するためにHTTPおよびHTTPSポートを必要とします。それらを開きます。
$ sudo firewall-cmd --add-service=http --permanent
$ sudo firewall-cmd --add-service=https --permanent
変更を適用するためにファイアウォールを再読み込みします。
$ sudo firewall-cmd --reload
ステップ2 - Nginxのインストール
Rocky Linux 9には古いバージョンのNginxが付属しています。最新バージョンをインストールするために公式のNginxリポジトリをダウンロードする必要があります。
公式のNginxリポジトリを作成するために、/etc/yum.repos.d/nginx.repoファイルを作成して開きます。
$ sudo nano /etc/yum.repos.d/nginx.repo
以下のコードを貼り付けます。
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
Ctrl + Xを押してファイルを保存し、プロンプトが表示されたらYを入力します。
Nginxサーバーをインストールします。
$ sudo dnf install nginx -y
インストールを確認します。
$ nginx -v
nginx version: nginx/1.24.0
Nginxサーバーを有効にして起動します。
$ sudo systemctl enable nginx --now
サーバーの状態を確認します。
$ sudo systemctl status nginx
? nginx.service - nginx - high performance web server
Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; preset: disabled)
Active: active (running) since Mon 2023-10-30 08:24:05 UTC; 7s ago
Docs: http://nginx.org/en/docs/
Process: 4265 ExecStart=/usr/sbin/nginx -c /etc/nginx/nginx.conf (code=exited, status=0/SUCCESS)
Main PID: 4266 (nginx)
Tasks: 2 (limit: 4402)
Memory: 1.9M
CPU: 7ms
CGroup: /system.slice/nginx.service
??4266 "nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf"
??4267 "nginx: worker process"
Oct 30 08:24:05 hugo.example.com systemd[1]: Starting nginx - high performance web server...
ステップ3 - Gitのインストール
Hugoは動作するためにGitを必要とします。以下のコマンドを実行してGitをインストールします。
$ sudo dnf install git -y
Gitのインストールを確認します。
$ git --version
git version 2.39.3
ステップ4 - Hugoのインストール
HugoはGo言語を使用して構築されているため、依存関係を必要とせず、スタンドアロンで実行できるため、インストールは非常に簡単です。
Hugoをダウンロードします。このチュートリアルでは、Hugoの拡張バージョンをインストールします。拡張バージョンは、画像を処理する際にWebp形式にエンコードできます。これは、Hugoが画像をリアルタイムで変換し、サイズを小さく保つ場合に便利です。拡張バージョンには、特定のケースで役立つSASSコンパイラも含まれています。
Hugo用のディレクトリを作成します。
$ sudo mkdir /var/www/html/hugo -p
新しく作成したディレクトリに移動します。
$ cd /var/www/html/hugo
GitHubのリリースページからHugoをダウンロードします。このチュートリアル執筆時点で、v0.119.0が最新バージョンであり、これをダウンロードします。
$ sudo wget https://github.com/gohugoio/hugo/releases/download/v0.119.0/hugo_extended_0.119.0_linux-amd64.tar.gz
アーカイブからファイルを抽出します。
$ sudo tar -xzf hugo_extended_0.119.0_linux-amd64.tar.gz
ディレクトリ内に次の3つのファイルが表示されます。
$ ls
hugo hugo_extended_0.119.0_linux-amd64.tar.gz LICENSE README.md
hugoバイナリを/usr/binディレクトリに移動します。
$ sudo mv hugo /usr/bin/hugo
ファイルにはすでに実行可能な権限が設定されているため、設定する必要はありません。
インストールを確認します。
$ hugo version
hugo v0.119.0-b84644c008e0dc2c4b67bd69cccf87a41a03937e+extended linux/amd64 BuildDate=2023-09-24T15:20:17Z VendorInfo=gohugoio
--helpフラグを使用して、使用可能なすべてのオプションを確認することもできます。
$ hugo --help
次の出力が得られます。
hugo is the main command, used to build your Hugo site.
Hugo is a Fast and Flexible Static Site Generator
built with love by spf13 and friends in Go.
Complete documentation is available at https://gohugo.io/.
Usage:
hugo [flags]
hugo [command]
Available Commands:
completion Generate the autocompletion script for the specified shell
config Print the site configuration
convert Convert your content to different formats
deploy Deploy your site to a Cloud provider.
env Print Hugo version and environment info
gen A collection of several useful generators.
help Help about any command
import Import your site from others.
list Listing out various types of content
mod Various Hugo Modules helpers.
new Create new content for your site
server A high performance webserver
version Print Hugo version and environment info
Flags:
-b, --baseURL string hostname (and path) to the root, e.g. https://spf13.com/
-D, --buildDrafts include content marked as draft
-E, --buildExpired include expired content
-F, --buildFuture include content with publishdate in the future
--cacheDir string filesystem path to cache directory
--cleanDestinationDir remove files from destination not found in static directories
--clock string set the clock used by Hugo, e.g. --clock 2021-11-06T22:30:00.00+09:00
--config string config file (default is hugo.yaml|json|toml)
--configDir string config dir (default "config")
-c, --contentDir string filesystem path to content directory
--debug debug output
-d, --destination string filesystem path to write files to
--disableKinds strings disable different kind of pages (home, RSS etc.)
--enableGitInfo add Git revision, date, author, and CODEOWNERS info to the pages
-e, --environment string build environment
--forceSyncStatic copy all files when static is changed.
--gc enable to run some cleanup tasks (remove unused cache files) after the build
-h, --help help for hugo
--ignoreCache ignores the cache directory
--ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
-l, --layoutDir string filesystem path to layout directory
--logLevel string log level (debug|info|warn|error)
--minify minify any supported output format (HTML, XML etc.)
--noBuildLock don't create .hugo_build.lock file
--noChmod don't sync permission mode of files
--noTimes don't sync modification time of files
--panicOnWarning panic on first WARNING log
--poll string set this to a poll interval, e.g --poll 700ms, to use a poll based approach to watch for file system changes
--printI18nWarnings print missing translations
--printMemoryUsage print memory usage to screen at intervals
--printPathWarnings print warnings on duplicate target paths etc.
--printUnusedTemplates print warnings on unused templates.
--quiet build in quiet mode
--renderToMemory render to memory (only useful for benchmark testing)
-s, --source string filesystem path to read files relative from
--templateMetrics display metrics about template executions
--templateMetricsHints calculate some improvement hints when combined with --templateMetrics
-t, --theme strings themes to use (located in /themes/THEMENAME/)
--themesDir string filesystem path to themes directory
--trace file write trace to file (not useful in general)
-v, --verbose verbose output
-w, --watch watch filesystem for changes and recreate as needed
Use "hugo [command] --help" for more information about a command.
フォルダ内の残りのファイルをすべて削除します。これらはもはや必要ありません。
$ sudo rm -rf *.*
ステップ5 - 新しいHugoサイトを作成する
新しいHugoウェブサイトを作成するために、次のコマンドを発行します。
$ sudo hugo new site howtoforge
次の出力が得られます。
Congratulations! Your new Hugo site was created in /home/navjot/hugo/howtoforge.
Just a few more steps...
1. Change the current directory to /home/navjot/hugo/howtoforge.
2. Create or install a theme:
- Create a new theme with the command "hugo new theme "
- Install a theme from https://themes.gohugo.io/
3. Edit hugo.toml, setting the "theme" property to the theme name.
4. Create new content with the command "hugo new content /.".
5. Start the embedded web server with the command "hugo server --buildDrafts".
See documentation at https://gohugo.io/.
treeコマンドを実行してサイトの構造を確認します。
$ tree howtoforge/
次の出力が得られます。
howtoforge/
??? archetypes
? ??? default.md
??? assets
??? content
??? data
??? hugo.toml
??? i18n
??? layouts
??? static
??? themes
8 directories, 2 files
Hugoディレクトリに移動します。
$ cd howtoforge
ステップ6 - Hugoテーマのインストール
次のステップはHugoテーマのインストールです。これには2つの方法があり、どちらもGitを必要とします。最初の方法はシンプルで、テーマのGitHubリポジトリをクローンすることです。これはほとんどの場合に便利で、最も簡単な方法です。この方法での更新は簡単ですが、必要のない多くのものをダウンロードすることになります。特に有料のテーマには、GitHubリポジトリがないものもあります。その場合、アーカイブを手動で抽出し、テーマを手動で更新する必要があります。3番目の方法は、テーマをGitサブモジュールとして取得することです。これには、HugoディレクトリをGitリポジトリとして初期化する必要があります。これは推奨される方法であり、GitHub、Netlify、または他のホスティングサービスにサイトをデプロイしたい場合に便利です。HugoサイトをGitHubにプッシュすることで、自動バックアップも確保できます。
すべての3つの方法をカバーします。Hugo Goモジュールを使用してHugoテーマをインストールする別の方法もあります。この方法は、テーマがHugoモジュールとして利用可能な場合にのみ機能します。ただし、この記事の範囲外であるため、これについてはカバーしません。
方法1 - Hugoテーマのクローン
これはHugoテーマをインストールする最も一般的な方法です。このチュートリアルでは、Paperテーマをインストールします。Hugoディレクトリに移動します。
$ cd /var/www/html/hugo/howtoforge
次のコマンドを実行してテーマのGitHubリポジトリをクローンします。--depth=1フラグは最新のコミットのみを取得します。
$ sudo git clone https://github.com/nanxiaobei/hugo-paper themes/Paper --depth=1
この方法でダウンロードしたテーマを更新するには、次のコマンドを実行します。
$ cd ~/hugo/howtoforge/themes/Paper
$ sudo git pull
方法2 - 圧縮アーカイブからテーマをインストール
これは最も簡単な方法です。テーマファイルのアーカイブを取得します。Paperテーマにはリリースセクションがないため、特定のバージョンをダウンロードすることはできません。したがって、GitHubのマスターアーカイブをダウンロードします。GitHubリポジトリページからリンクを取得できます。
$ cd ~
$ wget https://github.com/nanxiaobei/hugo-paper/archive/refs/heads/main.zip
アーカイブをテーマディレクトリに抽出します。-qフラグは出力を抑制し、-dフラグは出力ディレクトリを指定します。
$ sudo unzip -q main.zip -d /var/www/html/hugo/howtoforge/themes/
テーマを更新するには、最新のアーカイブをダウンロードして再度抽出する必要があります。変更したすべてのファイルのバックアップを取ることを忘れないでください。
下の2つの方法は、HugoサイトがGitプロジェクトとしてホストされている場合にのみ機能します。それ以外の場合は、以下の方法を使用する必要はありません。
方法3 - Gitサブモジュールとしてテーマをインストール
Hugoフォルダに移動します。
$ cd /var/www/html/hugo/howtoforge
HugoフォルダをGitリポジトリとして初期化します。これは重要なステップです。これにより、HugoサイトをGitHubにプッシュして、後でNetlify、AWS、Vercelなどを使用してホストすることができます。
$ sudo git init
次のコマンドを実行してテーマをGitサブモジュールとして追加します。
$ sudo git submodule add https://github.com/nanxiaobei/hugo-paper themes/paper
サブモジュールとして追加されたテーマを更新するには、Hugoフォルダから次のコマンドを実行します。
$ sudo git submodule update --remote --merge
Hugoの設定
選択した方法でテーマをインストールしたら、Hugoのルートディレクトリにあるhugo.tomlファイルを開きます。Hugo v0.110.0以降、デフォルトの設定ファイルはhugo.tomlという名前です。古いバージョンのHugoを使用している場合は、Hugoディレクトリにconfig.tomlファイルがあります。
$ sudo nano hugo.toml
ファイルに次の行を追加します。値はテーマのディレクトリと一致する必要があります。Paperテーマの場合、アーカイブインストールを使用した場合はhugo-paper-themeディレクトリ、上記のGitクローンまたはサブモジュールメソッドを使用した場合はPaperになります。
theme = 'hugo-paper-main'
また、変数baseURLの値をサイトのドメイン名に変更し、ウェブサイトのtitleも変更します。
設定ファイルは次のようになります。
baseURL = 'https://hugo.example.com/'
languageCode = 'en-us'
title = 'Howtoforge Hugo Demo'
theme = 'hugo-paper-main'
完了したら、Ctrl + Xを押してファイルを保存し、プロンプトが表示されたらYを入力します。
ステップ7 - 投稿とページを作成する
新しい投稿を作成するには、次のコマンドを発行します。
$ sudo hugo new post/first-post.md
これにより、content/postフォルダにfirst-post.mdというタイトルの新しいMarkdownファイルが作成されます。お気に入りのエディタでファイルを開き、詳細を編集して最初の投稿の内容を書きます。
+++
title = 'First Post'
date = 2023-10-30T03:32:38Z
draft = true
+++
## はじめに
これは太字のテキストで、これは*強調*されたテキストです。
[Howtoforge](https://www.howtoforge.com)ウェブサイトを訪問してください!
投稿の執筆が完了したら、draft = trueを削除します。Ctrl + Xを押してファイルを保存し、プロンプトが表示されたらYを入力します。
新しいページを作成するには、次のコマンドを発行します。
$ sudo hugo new about.md
これにより、contentフォルダにAboutというタイトルの新しいページが作成されます。同様に開いて編集します。
テーマの設定
公開する前に、メニューバーを表示するためにテーマにいくつかの変更を加える必要があります。これらの変更は、テーマの設定ではなくHugoの設定ファイルで行います。
Hugoディレクトリに移動します。
$ cd /var/www/html/hugo/howtoforge
hugo.tomlファイルを編集のために開きます。
$ sudo nano hugo.toml
以下のコードを下部に貼り付けます。
author = "Navjot Singh"
copyright = "Copyright © 2023, Navjot Singh; all rights reserved."
paginate = 3
enableInlineShortcodes = true
# needed to render raw HTML (e.g. , , , )
[markup]
[markup.goldmark]
[markup.goldmark.renderer]
unsafe = true
[menu]
[[menu.main]]
identifier = "about"
name = "About"
url = "/about/"
weight = 10
[taxonomies]
category = "categories"
tag = "tags"
series = "series"
Ctrl + Xを押してファイルを保存し、プロンプトが表示されたらYを入力します。
これらはサイトを機能させるための基本的な設定です。ここでは、ページごとに3つの投稿を表示し、Aboutページをメニュー項目として表示し、カテゴリ、タグ、投稿シリーズを設定しました。また、Hugoのインラインショートコードを有効にし、Goldmark Markdownレンダラーで生のHTMLを有効にしました。投稿に生のHTMLを埋め込みたくない場合は、無効にすることができます。
ステップ8 - Hugoサイトを公開する
サイトを構築して公開するには、次のコマンドを実行します。
$ sudo hugo
次のような出力が得られます。
Start building sites …
hugo v0.119.0-b84644c008e0dc2c4b67bd69cccf87a41a03937e+extended linux/amd64 BuildDate=2023-09-24T15:20:17Z VendorInfo=gohugoio
| EN
-------------------+-----
Pages | 7
Paginator pages | 0
Non-page files | 0
Static files | 11
Processed images | 0
Aliases | 3
Sitemaps | 1
Cleaned | 0
Total in 46 ms
これにより、publicフォルダに静的なHugoウェブサイトが作成され、公開されます。これらは、サイトが機能するためにNginx設定で指定する必要があるファイルです。変更を加えた後にコマンドを再度実行すると、ウェブサイトがすぐに更新されます。
ステップ9 - SSLのインストール
続ける前に、Certbotツールをインストールし、ドメインのSSL証明書をインストールする必要があります。
Certbotをインストールするために、Snapdパッケージインストーラーを使用します。Snapdは常にCertbotの最新の安定版を提供し、それを使用するべきです。
SnapdツールはEpelリポジトリを必要とします。
$ sudo dnf install epel-release -y
Snapdを使用してCertbotをインストールします。Snapdをインストールします。
$ sudo dnf install snapd -y
Snapサービスを有効にして起動します。
$ sudo systemctl enable snapd.socket --now
Snapdが機能するために必要なリンクを作成します。
$ sudo ln -s /var/lib/snapd/snap /snap
$ echo 'export PATH=$PATH:/var/lib/snapd/snap/bin' | sudo tee -a /etc/profile.d/snapd.sh
snapdのバージョンが最新であることを確認します。以下のコマンドを実行する前に数秒待ちます。
$ sudo snap install core
$ sudo snap refresh core
Certbotをインストールします。
$ sudo snap install --classic certbot
次のコマンドを使用して、Certbotコマンドが/usr/binディレクトリで実行できるようにシンボリックリンクを作成します。
$ sudo ln -s /snap/bin/certbot /usr/bin/certbot
インストールを確認します。
$ certbot --version
certbot 2.7.3
SSL証明書を生成します。
$ sudo certbot certonly --nginx --agree-tos --no-eff-email --staple-ocsp --preferred-challenges http -m [email protected] -d hugo.example.com
上記のコマンドは、サーバーの/etc/letsencrypt/live/hugo.example.comディレクトリに証明書をダウンロードします。
Diffie-Hellmanグループ証明書を生成します。
$ sudo openssl dhparam -dsaparam -out /etc/ssl/certs/dhparam.pem 4096
Certbotの更新スケジューラーサービスを確認します。
$ sudo systemctl list-timers
nextとしてsnap.certbot.renew.serviceがスケジュールされたサービスの1つとして表示されます。
NEXT LEFT LAST PASSED UNIT ACTIVATES
Wed 2023-10-29 10:00:17 UTC 57min left Wed 2023-10-18 08:49:39 UTC 12min ago dnf-makecache.timer dnf-makecache.service
Wed 2023-10-29 12:18:00 UTC 3h 15min left - - snap.certbot.renew.timer snap.certbot.renew.service
Thu 2023-10-30 00:00:00 UTC 14h left Wed 2023-10-18 08:10:08 UTC 52min ago logrotate.timer logrotate.service
SSL更新が正常に機能しているかを確認するために、プロセスのドライランを実行します。
$ sudo certbot renew --dry-run
エラーが表示されなければ、すべて設定完了です。証明書は自動的に更新されます。
ステップ10 - Nginxの設定
/etc/nginx/conf.d/hugo.confファイルを作成して開きます。
$ sudo nano /etc/nginx/conf.d/hugo.conf
hugo.confファイルに次のコードを貼り付けます。すべてのhugo.example.comのインスタンスをあなたのドメインに置き換えます。
## enforce HTTPS
server {
listen 80;
listen [::]:80;
server_name hugo.example.com;
return 301 https://$server_name$request_uri;
}
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name hugo.example.com;
root /home/navjot/hugo/howtoforge/public;
index index.html
access_log /var/log/nginx/hugo.access.log;
error_log /var/log/nginx/hugo.error.log;
client_max_body_size 20m;
gzip on;
http2_push_preload on; # Enable HTTP/2 Server Push
ssl_certificate /etc/letsencrypt/live/hugo.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/hugo.example.com/privkey.pem;
ssl_trusted_certificate /etc/letsencrypt/live/hugo.example.com/chain.pem;
ssl_session_timeout 1d;
# Enable TLS versions (TLSv1.3 is required upcoming HTTP/3 QUIC).
ssl_protocols TLSv1.2 TLSv1.3;
# Enable TLSv1.3's 0-RTT. Use $ssl_early_data when reverse proxying to
# prevent replay attacks.
#
# @see: https://nginx.org/en/docs/http/ngx_http_ssl_module.html#ssl_early_data
ssl_early_data on;
ssl_ciphers 'ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-GCM-SHA384';
ssl_prefer_server_ciphers on;
ssl_ecdh_curve X25519:prime256v1:secp384r1:secp521r1;
ssl_session_cache shared:SSL:50m;
ssl_session_tickets off;
# OCSP Stapling ---
# fetch OCSP records from URL in ssl_certificate and cache them
ssl_stapling on;
ssl_stapling_verify on;
ssl_dhparam /etc/ssl/certs/dhparam.pem;
add_header X-Early-Data $tls1_3_early_data;
location / {
try_files $uri $uri/ =404;
}
# Media
location ~* \\.jpg|jpeg|gif|png|ico|cur|gz|svg|mp4|ogg|ogv|webm|htc$ {
expires 30d;
}
# CSS and Js
location ~* \\.css|js$ {
expires 7d;
}
}
# This block is useful for debugging TLS v1.3. Please feel free to remove this
# and use the "$ssl_early_data" variable exposed by NGINX directly should you
# wish to do so.
map $ssl_early_data $tls1_3_early_data {
"~." $ssl_early_data;
default "";
}
上記の設定は、すべてのHTTPリクエストをHTTPSにリダイレクトし、Hugoサービスを介してドメイン経由で提供するためのプロキシとして機能します。
Ctrl + Xを押してファイルを保存し、プロンプトが表示されたらYを入力します。
/etc/nginx/nginx.confファイルを編集のために開きます。
$ sudo nano /etc/nginx/nginx.conf
include /etc/nginx/conf.d/*.conf;の前に次の行を追加します。
server_names_hash_bucket_size 64;
Ctrl + Xを押してファイルを保存し、プロンプトが表示されたらYを入力します。
Nginx設定を確認します。
$ sudo nginx -t
エラーが表示されなければ、準備完了です。Nginxサーバーを再読み込みします。
$ sudo systemctl reload nginx
ステップ11 - SELinuxの設定
OpenEMRのファイルセキュリティコンテキストを変更します。
$ sudo semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/html/hugo/howtoforge/public(/.*)?"
ポリシーを適用します。
$ sudo restorecon -Rv /var/www/html/hugo/howtoforge/public/
Nginxがネットワークに接続できるようにします。
$ sudo setsebool -P httpd_can_network_connect 1
ステップ12 - サイトを実行する
今、ブラウザでhttps://hugo.example.comを開いてインストールを確認できます。成功したインストールを示すページが表示されます。

ステップ13 - Hugoの更新
Hugoの更新は非常に簡単です。HugoのGitHubページから最新のリリースをダウンロードします。
$ cd /var/www/html/hugo
$ sudo wget https://github.com/gohugoio/hugo/releases/download/v0.119.0/hugo_extended_0.119.0_linux-amd64.tar.gz
アーカイブを抽出します。
$ sudo tar -xzf hugo_extended_0.119.0_linux-amd64.tar.gz
最新バージョンでHugoバイナリを置き換えます。-fフラグは、プロンプトなしでバイナリを上書きします。上書きの確認を求める場合は、代わりに-iフラグを使用できます。
$ sudo mv -f hugo /usr/bin/hugo
これで完了です。Hugoの更新はバイナリを置き換えるだけで簡単です。
ステップ14 - Hugoのバックアップと復元
バックアップを取るには、Hugoフォルダ全体のアーカイブを作成します。
$ cd /var/www/html/hugo
$ sudo tar -czvf howtoforge.tar.gz howtoforge/
新しいサーバーに復元するには、アーカイブを抽出し、バイナリをインストールすれば完了です。
$ cd /var/www/html/hugo
$ sudo tar -xzf howtoforge.tar.gz
結論
これで、Nginxを使用してRocky Linux 9サーバーにHugo静的サイトジェネレーターを設定する方法に関するチュートリアルが終了します。質問やフィードバックがあれば、下のコメントで共有してください。
新しい投稿を受信箱で受け取る
スパムはありません。いつでも購読を解除できます。