Fix devcontainer setup

This commit is contained in:
Mike Conrad
2025-06-20 10:47:20 -04:00
parent 761ea8fef8
commit 1696808c00
10 changed files with 31 additions and 53 deletions

View File

@ -4,14 +4,14 @@ HEALTHCHECK --interval=5s --timeout=10s --start-period=5s --retries=5 \
# All deps stage
FROM base AS deps
WORKDIR /app
WORKDIR /app/backend
ADD package.json package-lock.json ./
RUN npm ci
FROM deps AS develop
WORKDIR /app
WORKDIR /app/backend
COPY dev-entrypoint.sh /entrypoint.sh
COPY .env.example /app/.env
COPY .env.example /app/backend/.env
RUN chmod +x /entrypoint.sh
ENV NODE_ENV=development
EXPOSE 3333
@ -19,14 +19,14 @@ ENTRYPOINT [ "/entrypoint.sh" ]
# Production only deps stage
FROM base AS production-deps
WORKDIR /app
WORKDIR /app/backend
ADD package.json package-lock.json ./
RUN npm ci --omit=dev
# Build stage
FROM base AS build
WORKDIR /app
COPY --from=deps /app/node_modules /app/node_modules
WORKDIR /app/backend
COPY --from=deps /app/backend/node_modules /app/backend/node_modules
ADD . .
RUN node ace build
@ -34,8 +34,8 @@ RUN node ace build
FROM base
ENV NODE_ENV=production
WORKDIR /app
COPY --from=production-deps /app/node_modules /app/node_modules
COPY --from=build /app/build /app
COPY --from=production-deps /app/backend/node_modules /app/backend/node_modules
COPY --from=build /app/backend/build /app
EXPOSE 8080
CMD ["node", "./bin/server.js"]

View File

@ -1,8 +1,8 @@
import type { HttpContext } from '@adonisjs/core/http'
import User from '#models/user'
export default class UsersController {
public async index({ request }: HttpContext) {
const page = request.input('page', 1)
return User.query().paginate(page)
}
}
public async index({ request }: HttpContext) {
const page = request.input('page', 1)
return User.query().paginate(page)
}
}

View File

@ -1,5 +1,6 @@
#!/bin/sh
cd /app/backend
echo "starting up..."
node ace generate:key

View File

@ -8,10 +8,10 @@
*/
import router from '@adonisjs/core/services/router'
import UsersController from '#controllers/users_controller'
const UsersController = () => import('#controllers/users_controller')
router.get('users', [UsersController, 'index'])
router.get('/', async () => {
return {
hello: 'world',
hello: 'WORLD',
}
})