最終更新日: 2026年4月22日
テンプレート説明
Atuinは、シェルの操作履歴をエンドツーエンド暗号化して複数マシン間で同期できる、オープンソースのシェル履歴管理ツールです。PostgreSQLをバックエンドに利用したセルフホスト型の同期サーバーを構築することで、コマンド履歴を完全に自分のインフラ上で管理できます。bash、zsh、fishなど主要シェルに対応しています。
本テンプレートはインストール完了後もサービスは停止状態を維持します。また、新規ユーザー登録はデフォルトで無効化されています。以下の手順に従ってセットアップ・起動を行い、必要なタイミングでのみ登録を開放してください。
スタートアップスクリプトのテンプレートを利用してサーバー作成を行う手順はご利用ガイドを参照してください。
仕様
対応OSイメージ
Ubuntu 24.04 LTS
主要ソフトウェア
| ソフトウェア名 | バージョン | ライセンス | 用途 |
|---|---|---|---|
| Atuin | 18.13.5 | MIT | シェル履歴同期サーバー |
| PostgreSQL | 16 | PostgreSQL License | データベース |
| Docker | Latest | Apache 2.0 | コンテナランタイム |
| Docker Compose | Latest | Apache 2.0 | コンテナオーケストレーション |
| Nginx | Latest | BSD-2-Clause | リバースプロキシ |
| Certbot | Latest | Apache 2.0 | Let’s Encrypt SSL証明書取得 |
スタートアップスクリプト情報
| 項目 | 説明 |
|---|---|
| アプリケーション利用ポート | 80/tcp (HTTP)、443/tcp (HTTPS) |
| インストールディレクトリ | /opt/atuin |
| 管理スクリプト | /root/atuin-*.sh |
| 初期状態 | サービス停止中(手動起動が必要) |
その他
最小システム要件
- CPU: 1コア以上
- メモリ: 1GB以上
- ディスク容量: 10GB以上(履歴データ量に応じて増加)
- ネットワーク: パブリックIPアドレス
利用手順
メモ
スタートアップスクリプトにてアプリケーションのインストールが完了するまで数分かかります。
インストール完了後、rootディレクトリに「atuin-info.txt」というファイルが作成されますのでご確認ください。
ファイルが存在しない場合、作成されるまでしばらくお待ちください。
スタートアップスクリプトの実行状況は、SSH接続後に以下のコマンドで確認できます。
# tail -f /var/log/atuin-setup.log
重要
セキュリティ上の理由により、テンプレート作成直後はAtuinサービスが停止状態です。また、新規ユーザー登録もデフォルトで無効化されています。以下の手順に従ってサービスを起動し、クライアントの登録が完了したら登録機能を無効化してください。
管理スクリプト一覧
| スクリプト名 | 機能 | 使用例 |
|---|---|---|
| atuin-manage.sh setup | Dockerイメージの取得と初期準備 | # /root/atuin-manage.sh setup |
| atuin-manage.sh start | サービス起動・Nginx起動 | # /root/atuin-manage.sh start |
| atuin-manage.sh stop | サービス停止・Nginx停止 | # /root/atuin-manage.sh stop |
| atuin-manage.sh restart | サービス再起動 | # /root/atuin-manage.sh restart |
| atuin-manage.sh status | サービスの稼働状態確認 | # /root/atuin-manage.sh status |
| atuin-manage.sh logs | 直近100行のログ表示 | # /root/atuin-manage.sh logs |
| atuin-manage.sh register-on | 新規ユーザー登録を有効化 | # /root/atuin-manage.sh register-on |
| atuin-manage.sh register-off | 新規ユーザー登録を無効化 | # /root/atuin-manage.sh register-off |
| atuin-letsencrypt.sh | Let’s EncryptによるSSL証明書の取得・設定 | # /root/atuin-letsencrypt.sh -e [email protected] |
| atuin-change-domain.sh | ドメイン変更と自己署名証明書の再生成 | # /root/atuin-change-domain.sh -d new.domain.com |
| atuin-diagnose.sh | システム診断情報の表示 | # /root/atuin-diagnose.sh |
セキュリティグループの設定
| ポート番号 | プロトコル | 用途 | 必須/オプション |
|---|---|---|---|
| 22 | TCP | SSH | 任意 |
| 80 | TCP | HTTP(HTTPSへリダイレクト) | 必須 |
| 443 | TCP | HTTPS | 必須 |
Step 1: VPSへの接続
【VPS側】 SSHクライアントを使用してVPSに接続します。
# ssh root@<IPアドレス>
Step 2: 初期セットアップ
【VPS側】 Dockerイメージの取得と初期準備を行います。
# /root/atuin-manage.sh setup
Step 3: サービスの起動
【VPS側】 Atuinサーバーを起動します。
# /root/atuin-manage.sh start
Step 4: HTTPS設定
【VPS側】 AtuinクライアントはHTTPS接続が必要です。ドメインのDNSレコードをVPSのIPアドレスに向けた上で、Let’s Encrypt証明書を取得してください。
# /root/atuin-letsencrypt.sh -e [email protected]
重要
AtuinクライアントはHTTPS接続が必須です。自己署名証明書のままではクライアントとの通信が正常に行えないため、本ステップは必ず実施してください。
Step 5: クライアントの登録
【VPS側】 新規ユーザー登録を一時的に有効化します。
# /root/atuin-manage.sh register-on
【手元のPC側】 Atuinクライアントをインストールします。
$ curl --proto '=https' --tlsv1.2 -LsSf https://setup.atuin.sh | sh
$ source ~/.bashrc # bashの場合
# または
$ source ~/.zshrc # zshの場合
atuin コマンドが見つからない場合
インストーラーによってはPATHが自動設定されないことがあります。以下を実行してください。
$ export PATH="$HOME/.atuin/bin:$PATH"
$ echo 'export PATH="$HOME/.atuin/bin:$PATH"' >> ~/.bashrc
$ source ~/.bashrc
【手元のPC側】 アカウントを登録します。register を実行してから login に進んでください。
$ atuin register -u USERNAME -e 'EMAIL' -p 'PASSWORD'
パスワードに記号が含まれる場合
! などの記号が含まれる場合はシングルクォートで囲んでください。ダブルクォートでは記号が正しく扱われないことがあります。
【手元のPC側】 暗号化キーの入力を求めるプロンプトが表示されます。
Please enter encryption key [blank to use existing key file]:
初めてのマシンの場合はそのままEnterを押してください。新しいキーが自動生成されます。2台目以降のマシンの場合は、既存マシンで atuin key を実行して取得したキーを入力してください。
【手元のPC側】 登録完了後、暗号化キーを必ず控えておきます。2台目以降のマシンで同期する際に必要です。
$ atuin key
表示されたキーを安全な場所に保存してください。紛失した場合は復元できません。
【手元のPC側】 ~/.config/atuin/config.toml にサーバーアドレスを設定します。テキストエディタで開き、sync_address の行を編集してください。
$ nano ~/.config/atuin/config.toml
sync_address = "https://<your-domain>"
設定ファイルの編集について
設定ファイルの内容をシェル上に直接貼り付けないでください。sync_address: command not found のエラーが発生します。必ずテキストエディタで編集してください。
【手元のPC側】 ログインして履歴を同期します。
$ atuin login -u USERNAME -p 'PASSWORD'
$ atuin sync
【VPS側】 全クライアントの登録が完了したら、登録を無効化します。
# /root/atuin-manage.sh register-off
セキュリティ重要
登録が完了したら、必ず /root/atuin-manage.sh register-off を実行して登録機能を無効化してください。登録を開放したまま放置すると、第三者がサーバーにアカウントを作成できる状態になります。
Step 6: ドメイン変更(オプション)
【VPS側】 インストール後にドメインを変更する場合は以下のスクリプトを使用します。
# /root/atuin-change-domain.sh -d new.domain.com
Step 7: システム診断
【VPS側】 サーバーの稼働状態を確認するには診断スクリプトを実行します。
# /root/atuin-diagnose.sh
アプリケーションの具体的な利用方法につきましては、サービス開発元やサービス提供元の公式サイト、Wikiなどで最新情報をご確認ください。
外部リンク
| サイト名 | URL | 説明 |
|---|---|---|
| Atuin公式サイト | https://atuin.sh/ | プロダクト情報・最新ニュース |
| Atuin公式ドキュメント(セルフホスト) | https://docs.atuin.sh/cli/self-hosting/server-setup/ | サーバーセットアップガイド |
| AtuinのGitHubリポジトリ | https://github.com/atuinsh/atuin | ソースコード・イシュートラッカー |