Coder Social home page Coder Social logo

rpg59 / issues Goto Github PK

View Code? Open in Web Editor NEW

This project forked from taskany-inc/issues

0.0 0.0 0.0 25.79 MB

The simplest task manager ever. Love planning again ๐Ÿ‘

Home Page: http://taskany.org

License: MIT License

Shell 0.06% JavaScript 0.64% TypeScript 95.58% Dockerfile 0.07% MDX 1.16% CSS 2.50%

issues's Introduction

Taskany

Taskany

Docker

Docker is the recommended way to run Taskany Issues โ€“ updated Docker images based on Alpine Linux are available on a weekly release cadence and are tested by the maintaining team.

Configuration

Using this sample file as a reference create a .env file to contain the environment variables for your installation.

Docker Compose

It is recommended to use Docker Compose to manage the various docker containers, if your Postgres is running in the cloud then you may skip this step and run the single Taskany Issues docker container directly.

  1. Install Docker Compose.
  2. Create a docker-compose.yml file, an example configuration with all dependencies dockerized and environment variables kept in .env is as follows.
version: '3'
services:
    db:
        image: postgres:11.6
        container_name: postgres
        env_file: ./.env
        ports:
            - 5432:5432
        volumes:
            - ./postgres/data:/var/lib/postgresql/data
    taskany_issues:
        image: taskany/issues:latest
        env_file: ./.env
        depends_on:
            - db
        ports:
            - 3000:3000
        healthcheck:
            test: ['CMD', 'curl', '-f', 'http://localhost:3000/api/auth/signin']
            interval: 3s
            timeout: 10s
            retries: 3

It is recommended to pin the version of the image rather than relying on the latest tag so that you can remain in control of upgrades, eg image: taskany/issues:1.0.0.

Running

Make sure you are in the same directory as docker-compose.yml and start Taskany Issues:

docker-compose up -d

Database

Migrate the database to add needed tables, indexes, etc:

docker-compose run --rm taskany_issues npm run db:migrate

Seed

If you want to test Taskany Issues with some promo data:

docker-compose run --rm taskany_issues npm run db:seed

Enterprise

If you are installing the enterprise edition the image name should be taskany/issues-enterprise. Firstly you need to create custom Dockerfile based on enterprise image:

FROM taskany/issues-enterprise as build

WORKDIR /app
COPY .taskany.config.json .
RUN npm ci
RUN npm run build

FROM node:20.9.0-alpine AS runner

WORKDIR /app
COPY --from=build /app/package*.json ./
COPY --from=build /app/prisma ./prisma
COPY --from=build /app/public ./public
COPY --from=build /app/version ./public/version.txt
COPY --from=build /app/.next ./.next
COPY --from=build /app/next.config.js ./
COPY --from=build /app/.next/standalone ./
COPY --from=build /app/background ./background

RUN npm ci --only=production --ignore-scripts && npm cache clean --force
RUN npx prisma generate

EXPOSE 3000

CMD ["node_modules/.bin/concurrently", "node background/worker/index.js", "node server.js"]

Then use this Dockerfile with Docker Compose is as follows:

version: '3'
services:
    db:
        image: postgres:11.6
        container_name: postgres
        env_file: ./.env
        ports:
            - 5432:5432
        volumes:
            - ./postgres/data:/var/lib/postgresql/data
    taskany_issues:
        container_name: issues
        env_file: ./.env
        stdin_open: true
        build:
            context: .
            dockerfile: Dockerfile
        depends_on:
            - db
        ports:
            - 3000:3000
        healthcheck:
            test: ['CMD', 'curl', '-f', 'http://localhost:3000/api/auth/signin']
            interval: 3s
            timeout: 10s
            retries: 3

Monitoring

OpenTelemetry

Taskany can send request traces to an OpenTelemetry Collector. To use this feature specify the collector endpoint with OTEL_EXPORTER_OTLP_ENDPOINT.

โš ๏ธ GRPC protocol is not supported

(optional) Set the TASKANY_OPEN_TELEMETRY_SERVICE_NAME environment variable to be the declared service name.

Contributing

Please follow code of conduct first. Than use instructions in contributing guide to create your first PR.

License

MIT

issues's People

Contributors

awinogradov avatar dependabot[bot] avatar denisvorop avatar lamaeats avatar asabotovich avatar taskany-sheep avatar peter-nikitin avatar troff8 avatar 9teen90nine avatar bogdanfv avatar katrin-kudryash avatar tsumo avatar katekate avatar nyet-ty avatar innaandreeva avatar semenovdmitry avatar rpg59 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.