導入
ウォルウェブ
サンプルコマンド
オプション 1
オプション 2
ドッカーイメージ
サポートされているプラットフォーム
ドッカーラン
Dockerfile
Makefile を使用してビルドする (推奨)
手動インストールとビルド
docker compose でビルドする (簡単)
ゴーラン画像:
ノードjsイメージ:
フロントエンド
データベース
バックエンド
APIドキュメント
docker compose でバックエンドを実行する
使用例
UI
開発する
ドッカー環境
フロントエンドの構築
バックエンド
導入
環境変数
wakeonlan用にローカルでホストされている Web アプリで、プライベート ネットワーク内のコンピューターをオンにします。
VPN を使用してネットワークにアクセスし、ブラウザをクリックするだけでコンピュータを起動します。
フロントエンド: Vue.js + TypeScript
バックエンド: golang + ファイバー
npm i -g @vue/clicd フロントエンド npmインストール npm 実行サーブ
データベースがpostgresqlからsqliteに切り替わりました。したがって、データベースをセットアップする必要はなく、サーバーが sqlite を処理します。
CDバックエンド mkdir -p データ go get -u github.com/cosmtrek/air# go/bin を pathexport に追加 PATH=$HOME/go/bin:$PATH # Linux 上、macair でも同様 # ライブリロードを開始
docker compose -f docker-compose-helpers.yml 開発バックエンドを実行します
またはmake dev-backend
その他の構成オプションについては、「バックエンド変数と環境変数」を参照してください。
https://documenter.getpostman.com/view/UVRAJ7MZ?version=latest
アプリは docker でホストできます。そのためには、マシンにdocker
とdocker compose
インストールされている必要があります。
Docker を使用せずに (ネイティブ golang を使用して) 実行する場合は、後のセクション「Docker を使用しないデプロイ」を参照してください。
実行しているマシンに応じて、 docker compose.yml
およびdocker docker-compose-helpers.yml
内のイメージ タグを変更します。
golang:1.17.6-alpine3.15
ノード:16
アプリをデプロイするには、フロントエンドを構築する必要はなく、github からリリースをダウンロードするだけです。
または、このコマンドmake download-frontend
使用します。
ビルドする必要がある場合は、次の手順をお読みください。
フロントエンドは vuejs で記述されており、 index.html
およびその他のリソースを含むdist
フォルダーを生成するには手動で構築する必要があります。
build-frontend を # docker compose メソッドと全く同じ、単純化されたラッパーにする
マシンにnodejs 15+、npmがある場合は、フロントエンドにcdできます。
CDフロントエンド npmインストール npm run build:pwa
依存関係がインストールされていない場合は、 docker compose を使用してフロントエンドの運用ビルドをビルドできます。
docker compose -f docker-compose-helpers.yml ビルドフロントエンドを実行します
バックエンドに関する詳細と設定については、バックエンドの README を確認してください。
設定できます
サーバーのポート
サインアップを許可されるユーザーの数
JWT シークレットとログイン時間 (JWT_VALID_TIME)
make build-backend
実行してバックエンド バイナリをビルドします。
golang がインストールされている場合は、 go build . -o server
-o backend
フォルダー内のgo build . -o server
。
huakunshen/wol:latest
Linux/arm64/v8
Linux/アーム/v6
inux/arm/v7
Linux/AMD64
Docker イメージには、 wol
と呼ばれる wakeonlan cli など、アプリの実行に必要なものがすべて含まれています。 network=host を指定してコンテナを実行して、 wol
cli ツールを使用できます。
dockerボリューム作成wol docker run -d --network=host --restart=unless-stopped --name wol-web -v wol:/wol-server/data huakunshen/wol:latest
または、単にmake deploy
(上記のdocker run
コマンドのエイリアス) を実行します。
デタッチ モードなしで実行するには、 make deploy-test
実行します。
指示に従って、カスタマイズした環境変数を追加できます。
Docker イメージの構築に使用される Dockerfile には 2 つのバージョンがあります。
Dockerfile
make build-frontend
またはmake download-frontend
を実行して実稼働ビルドを生成します
vue フロントエンドと golang サーバーの両方をイメージにビルドします
Dockerfile
、フロントエンドがすでに ( frontend/dist
で) コンパイルされていることを前提としています。
次にdocker build -t huakunshen/wol:latest .
イメージを構築する
make buildx
マルチプラットフォームイメージを生成します
環境変数は次の方法で追加/上書きできます。
environment:
docker compose
サービスまたは
docker run
に-e env_name=env_value
を追加
次の変数はデフォルトの環境変数です。
PORT=9090 JWT_SECRET=secret JWT_VALID_TIME=14400 # in minute NUM_USER_ALLOWED=1
NUM_USER_ALLOWED
環境変数を使用して、サインアップを許可されるユーザーの数を指定できます。あなたが唯一のユーザーの場合、デフォルトは 1 です。
開発中に、データベース環境変数とサーバー環境変数の両方をbackend/.env
で変更できます。
バックエンドもチェックしてください。
backend/.env
を編集する
このディレクトリに cd で移動します (wol-web)
docker run -d --network=host --name wol-web -v ${PWD}/wol-web-data:/wol-server/data --env-file バックエンド/.env フアクンシェン/ウォル:最新
docker run -d --network=host --name wol-web -v ${PWD}/wol-web-data:/wol-server/data -e ポート=9090 -e JWT_SECRET=wol-シークレット -e JWT_VALID_TIME=20000 -e NUM_USER_ALLOWED=1 フアクンシェン/ウォル:最新