Деплой Apostrophe 3 CMS на свой VPS в Docker

ApostropheCMS — это CMS для сайтов с открытым исходным кодом, напсианный на JavaScript. Apostrophe Assembly — это мощная и гибкая платформа для создания веб-сайтов для цифровых агентств, компаний SaaS, высших учебных заведений, предприятий и т. д.

Не буду долго томить, описывая лирику. В общем говоря, задачей является деплой данной Apostrophe CMS на свой VPS или локальный компьютер, имея в системе Docker.

Для быстрого старта можно скачать мою заготовку с GitHub, если хочется собрать ручкамис нуля, то нужно сделать следующие шаги:

  1. Склонировать себе официальный код с репозитория проекта
  2. Добавить Dockerfile с содержимым в корень
FROM node:14
ENV APOS_MINIFY=1
ENV NODE_ENV=production
WORKDIR /app
COPY package* ./
RUN npm ci
RUN mkdir scripts
# Use "m" to temporarily install mongod in a lightweight way so
# the asset build task does not encounter problems initializing modules
# that expect a database. We do not actually need this database in the
# container, so uninstall it at the end
RUN npm install -g m
RUN apt-get -y update
RUN apt-get -y install scons
RUN m 3.6
RUN m tools stable

COPY . ./
RUN m rm 3.6
EXPOSE 3000

CMD ["npm", "run", "start"] 

3. Добавить docker-compose.yml

version: "3.3"
services:
  admin:
    container_name: apostrophe
    restart: always
    build: ./
    ports:
      - "3000:3000"
    volumes:
      - ./data/uploads:/app/public/uploads
      - ./data/backups:/app/backups
    environment:
      - APOS_MONGODB_URI=mongodb://mongo:27017/db
    depends_on:
      - mongo

  mongo:
    container_name: mongo
    image: mongo:4.4
    restart: always
    volumes:
      - ./data/mongo/db:/data/db
    ports:
      - 27017:27017

volumes:
  apostrophe:
  mongo:
    driver: local

4. Запустить команду docker-compose up -d

Пожалуйста, оцените материал

Деплой Apostrophe 3 CMS на свой VPS в Docker