Skip to content

[backend]⇒ Laravel, Echo, Ruby, Django [frontend]⇒ Apollo, Next.js, Nuxt.js, SvelteKit。

License

Notifications You must be signed in to change notification settings

perilla0/web_frameworks_template

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

1. このリポジトリについて

開発スタート用にWebフレームワークをまとめたDocker Composeテンプレプロジェクトです。
ツールをインストールして起動するまでの手順をサポートすることが目的です。

※ このプロジェクトでは、.gitignoreにて/srcディレクトリを捕捉しないよう設定しています。(必要に応じて指定を削除します)

1.1. 環境ファイル(.env)編集

プロジェクト直下の.envファイルを確認ください。 任意で環境変数パラメータを変更します。

1.2. Dockerサービス作成

プロジェクトファイルの作成が必要なDockerサービスを全てビルドします。
バックエンド、フロントエンドのプロジェクトファイルをsrc配下に作成します。

cd script/docker/init/
./services.create.sh

1.3. コンテナ起動前の設定(初回のみ)

初回のみ、docker compose upで各サービスを起動する前に、設定が必要なサービスが存在します。
詳細はdoc/初回コンテナ起動前の設定.mdを参照ください。

1.4. コンテナ起動

docker compose up

1.5. コンテナ起動後の設定(初回のみ)

初回のみ、docker compose upで各サービスを起動した後に、設定が必要なサービスが存在します。
詳細はdoc/初回コンテナ起動後の設定.mdを参照ください。

1.6. コンテナ削除

cd script/docker
./down_clear.sh

1.7. Dockerサービス削除

プロジェクトファイルが存在するDockerサービスのコンテナイメージと、src直下のプロジェクトファイルを削除します。

cd script/docker/init/
./services.remove.sh

2. Docker Composeサービス一覧

2.1. Web/プロキシ

サービス名 ツール名 Docker Hub ポート番号 説明
nginx.web.backend nginx nginx - ・バックエンドサービスへの中継
・自己署名証明書
nginx.web.frontend nginx nginx - ・フロントエンドサービスへの中継
・自己署名証明書

2.2. バックエンド

サービス名 ツール名 Docker Hub ポート番号 説明
laravel.app.backend Laravel php 58000 PHP
cron
キュー
rails.app.backend Ruby on Rails ruby 58010 Ruby
django.app.backend Django python 58020 Python
echo.app.backend Echo golang 58030 Go

2.3. フロントエンド

サービス名 ツール名 Docker Hub ポート番号 説明
ts.next.client.apollo.app.frontend Apollo Client node 443 GraphQL
ts.next.app.frontend Next.js node 8010 React
ts.nuxt.app.frontend Nuxt.js node 8020 Vue.js
kit.svelte.app.frontend SvelteKit node 8030 Svelte

2.4. データベース

サービス名 ツール名 Docker Hub ポート番号 説明
pgsql.db MySQL postgres 5432 -
mysql.db PostgreSQL mysql 3306 -
redis.db Redis redis 6379 -
memcached.db memcached memcached 11211 -
mongo.db MongoDB mongo 27017 -

2.5. 他ツール

サービス名 ツール名 Docker Hub ポート番号 説明
admin.pgsql.db.tool pgadmin4 pgadmin4 50010 PostgreSQL管理
admin.mysql.db.tool phpmyadmin phpmyadmin 50020 MySQL管理
admin.redis.db.tool redisinsight redisinsight 50030 redis管理
admin.mongo.db.tool mongo-express mongo-express 50040 MongoDB管理
mailpit.mail.tool mailpit mailpit 1025 (メール待受)
50050 (メール一覧画面)
メール送信テスト

3. Qiita記事

Webフレームワークを集めたDockerComposeを作ってみた

https://qiita.com/perilla/items/3fa4e384c8a9643951b8