#laravel6+nuxt.js+mysqlの構築
laravel,mysql,nginxの構築は@simotarooさんの記事が優秀なのでこちらを参考にしてください
https://qiita.com/shimotaroo/items/29f7878b01ee4b99b951
本題に関係ないんですけどngixってエンジンエックスって読むんですね,,,(笑
#nuxt.jsの構築
@simotarooさんの記事で作成したdocker-compose.ymlに PORT:3000, HOST: 0.0.0.0を追加
理由としてコンテナで設定されているポート番号とnode.jsのポート番号が違うままだと繋がらないためです
docker-compose.yml
#docker-compose.ymlのバージョン
version: '3.8'
#docker volumeの設定
volumes:
docker-volume:
#services以下に各コンテナの設定を書く
services:
#Webサーバーのコンテナ
web:
image: nginx:1.18
ports:
- '8000:80'
depends_on:
- app
volumes:
- ./docker/nginx/default.conf:/etc/nginx/conf.d/default.conf
- .:/var/www/html
#アプリケーションのコンテナ
app:
build: ./docker/php
volumes:
- .:/var/www/html
environment:
PORT: 3000 #追加
HOST: 0.0.0.0 #追加
ports:
- 3000:3000
#データベースのコンテナ
db:
image: mysql:5.7
ports:
- '3306:3306'
environment:
MYSQL_DATABASE: ######
MYSQL_USER: #####
MYSQL_PASSWORD: #######
MYSQL_ROOT_PASSWORD: ##########
TZ: 'Asia/Tokyo'
volumes:
- docker-volume:/var/lib/mysql
dockerfileに RUN npm install -g create-nuxt-app を追加
dockerfile
FROM php:7.2-fpm
#composerのインストール
COPY --from=composer:1.10 /usr/bin/composer /usr/bin/composer
#npmのインストール
COPY --from=node:10.22 /usr/local/bin /usr/local/bin
COPY --from=node:10.22 /usr/local/lib /usr/local/lib
#パッケージ管理ツールapt-getの更新と必要パッケージのインストール
RUN apt-get update \
&& apt-get install -y \
git \
zip \
unzip \
&& docker-php-ext-install pdo_mysql bcmath
RUN npm install -g create-nuxt-app #追加
#コンテナ内に入った時のディレクトリを指定
WORKDIR /var/www/html
追加後はdocker-compose buildし変更を反映
反映できたらdocker内で
tarminal
root@########:/var/www/html npx create-nuxt-app ディレクトリ名
で実行
tarminal
🎉 Successfully created project ディレクトリ名
To get started:
cd ディレクトリ名
npm run dev
To build & start for production:
cd ディレクトリ名
npm run build
npm run start
成功したらこんな画面になります。
作成したディレクトリ内に入り,npm run devを実行後動作確認で以下のURLに入ってnode.jsの画面が出れば成功です
http://localhost:3000/
お疲れ様でした👏