diff --git a/docker-compose.yaml b/docker-compose.yaml index cbc25a59e..2a6921fbe 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -74,13 +74,13 @@ services: - cache:/app/tmp/cache - bundle:/usr/local/bundle ports: - - "5173:5173" # Vite dev server + - "3036:3036" # Vite dev server environment: - VITE_DEV_SERVER_HOST=0.0.0.0 - NODE_ENV=development - RAILS_ENV=development entrypoint: docker/entrypoints/vite.sh - command: pnpm run dev + command: bin/vite dev postgres: image: postgres:12 diff --git a/docker/Dockerfile b/docker/Dockerfile index faea49c2e..14618bf61 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -5,7 +5,7 @@ FROM ruby:3.3.3-alpine3.19 AS pre-builder # For development docker-compose file overrides ARGS ARG BUNDLE_WITHOUT="development:test" ENV BUNDLE_WITHOUT ${BUNDLE_WITHOUT} -ENV BUNDLER_VERSION=2.1.2 +ENV BUNDLER_VERSION=2.5.11 ARG RAILS_SERVE_STATIC_FILES=true ENV RAILS_SERVE_STATIC_FILES ${RAILS_SERVE_STATIC_FILES} @@ -89,7 +89,7 @@ FROM ruby:3.3.3-alpine3.19 ARG BUNDLE_WITHOUT="development:test" ENV BUNDLE_WITHOUT ${BUNDLE_WITHOUT} -ENV BUNDLER_VERSION=2.1.2 +ENV BUNDLER_VERSION=2.5.11 ARG EXECJS_RUNTIME="Disabled" ENV EXECJS_RUNTIME ${EXECJS_RUNTIME} @@ -115,7 +115,7 @@ RUN apk update && apk add --no-cache \ && gem install bundler RUN if [ "$RAILS_ENV" != "production" ]; then \ - apk add --no-cache nodejs-current; \ + apk add --no-cache nodejs=20.15.1-r0; \ # Install pnpm and configure environment wget -qO- https://get.pnpm.io/install.sh | ENV="$HOME/.shrc" SHELL="$(which sh)" sh - \ && source /root/.shrc \ diff --git a/docker/dockerfiles/vite.Dockerfile b/docker/dockerfiles/vite.Dockerfile index 2117ff691..f3da365ec 100644 --- a/docker/dockerfiles/vite.Dockerfile +++ b/docker/dockerfiles/vite.Dockerfile @@ -1,6 +1,9 @@ FROM chatwoot:development +ENV PNPM_HOME="/root/.local/share/pnpm" +ENV PATH="$PNPM_HOME:$PATH" + RUN chmod +x docker/entrypoints/vite.sh -EXPOSE 5173 -CMD ["pnpm", "run", "dev"] +EXPOSE 3036 +CMD ["bin/vite", "dev"] diff --git a/docker/dockerfiles/webpack.Dockerfile b/docker/dockerfiles/webpack.Dockerfile deleted file mode 100644 index ec5cdc100..000000000 --- a/docker/dockerfiles/webpack.Dockerfile +++ /dev/null @@ -1,6 +0,0 @@ -FROM chatwoot:development - -RUN chmod +x docker/entrypoints/webpack.sh - -EXPOSE 3035 -CMD ["bin/webpack-dev-server"] \ No newline at end of file diff --git a/docker/entrypoints/vite.sh b/docker/entrypoints/vite.sh old mode 100644 new mode 100755 index 16e57e82c..4f4b88b12 --- a/docker/entrypoints/vite.sh +++ b/docker/entrypoints/vite.sh @@ -1,19 +1,11 @@ #!/bin/sh -set -e +set -x rm -rf /app/tmp/pids/server.pid rm -rf /app/tmp/cache/* -pnpm install --frozen-lockfile - -echo "Waiting for pnpm and bundle integrity to match lockfiles...." -PNPM="pnpm list --json | grep -q 'Missing dependencies'" -BUNDLE="bundle check" - -until ! $PNPM && $BUNDLE -do - sleep 2; -done +pnpm store prune +pnpm install echo "Ready to run Vite development server." diff --git a/docker/entrypoints/webpack.sh b/docker/entrypoints/webpack.sh deleted file mode 100755 index d50ff1b76..000000000 --- a/docker/entrypoints/webpack.sh +++ /dev/null @@ -1,20 +0,0 @@ -#!/bin/sh -set -e - -rm -rf /app/tmp/pids/server.pid -rm -rf /app/tmp/cache/* - -yarn install --check-files - -echo "Waiting for yarn and bundle integrity to match lockfiles...." -YARN="yarn check --integrity" -BUNDLE="bundle check" - -until $YARN && $BUNDLE -do - sleep 2; -done - -echo "Ready to run webpack development server." - -exec "$@"