Coder Social home page Coder Social logo

msf4-0 / integrated-resource-planning-system-irps Goto Github PK

View Code? Open in Web Editor NEW
14.0 5.0 21.0 264 KB

Integrated using ERPNext, Frepple, Metabase, Telegram, and Barcode Scanning System

License: GNU General Public License v3.0

Dockerfile 56.48% Shell 43.52%
docker nginx docker-compose erpnext erpnext-customization erp frappe-framework

integrated-resource-planning-system-irps's Introduction

Integrated Resource Planning System IRPS

GitHub Releases Downloads Issues GitHub pull requests

ERPNext Home Page

ERPNext Home Page


Frepple Integration

Frepple Integration


Barcode Scanning System

Barcode Scanning System


For ERPNext User

1. List of possible ERPNext docker setup

2. Integrated Resource Planning System IRPS

  1. Prerequisites:

    • Windows: Docker Desktop
    • Ubuntu: Docker Engine, Docker Compose
    • Mac: Docker Desktop
  2. Frappe Apps included:

  3. For Windows & MacOS user, start from Section 3.

  4. For Ubuntu user, start from Section 4.

3. Pre-Setup: Windows/MacOS

  1. The setup guide is tested to work on Windows 10, Ubuntu 18.04 and macOS Mojave 10.14.6

  2. For Windows and MacOS, create a folder.

  3. Open a Powershell terminal, navigate to the newly created folder.

  4. Go to Section 5: Setup.

4. Pre-Setup: Ubuntu

  1. Open a terminal.

  2. Create a user called frappe. (You can give a name of your preference to replace frappe)

    • sudo adduser frappe
  3. You may be promted to give a password for the newly created user frappe. Remember this password, you will need it for the next step.

  4. Log into the user frappe

    • su - frappe
  5. Create a folder called frappe_docker. Again, folder name is of your preference. Navigate into the new directory.

    • mkdir frappe_docker
    • cd frappe_docker
  6. Go to Section 5: Setup.

5. Setup

  1. Clone this repo.

    • git clone https://github.com/msf4-0/Integrated-Resource-Planning-System-IRPS.git
  2. Navigate to the cloned folder.

    • cd Integrated-Resource-Planning-System-IRPS
  3. In enx-example, you can change the ERPNEXT_SERVER_PORT and MARIADB_SERVER_PORT variables. Copy environment variables from the env-example file into .env file.

    • Upon successful setup, you can access ERPNext via port number ERPNEXT_SERVER_PORT
    • For Metabase Integration, you would need to connect to Mariadb via MARIADB_SERVER_PORT
    • cp env-example .env
  4. Start all the docker containers. Note: Replace <project_name> to your preference.

    • docker-compose -p <project_name> up -d
    • For example, docker-compose -p project1 up -d
  5. Monitor the site creation progress by logging the <project_name>_site-creator_1 container.

    • docker logs <project_name>_site-creator_1 -f
    • For example, docker logs project1_site-creator_1 -f
    • If you face no such container error, try with docker logs project1-site-creator-1 -f
  6. After the <project_name>_site-creator_1 container display Scheduler is disabled, you can open Google Chrome and access ERPNext via localhost:8000 or 127.0.0.1:8000.

  7. Default credentials.

    • Username: Administrator
    • Password: admin

6. Stopping Docker Containers

  1. To stop all the docker containers related to your <peoject-name> project
    • In the Integrated-Resource-Planning-System-IRPS directory, run docker-compose -p <project-name> stop
    • For example, docker-compose -p project1 stop

7. Starting Docker Containers

  1. To start up all the docker containers related to your <peoject-name> project
    • In the Integrated-Resource-Planning-System-IRPS directory, run docker-compose -p <project-name> start
    • For example, docker-compose -p project1 start

8. Deleting Docker Containers

  1. To remove all the docker containers related to your <peoject-name> project
    • Run docker-compose -p <project-name> down
    • Run docker-compose -p <project-name> down -v to remove the related Docker Volume
    • For example, docker-compose -p project1 down -v

Update Custom App

  1. Assumptions:
    1. You have a running instance of ERPNext in docker production container.
  2. How to update custom app

Backup

  1. Assumptions:
    1. You have a running instance of ERPNext in docker production container.
  2. Alternatives:
    1. Online Backup (Automatic)
    2. Local Backup (Manual)
    3. Local Backup (Automatic)

Restore

  1. Assumptions:
    1. You have your backup files on your pc (if you perform online backup, you can download the backup files onto your pc).
    2. You have a running instance of ERPNext in docker production container in which you want to restore with the backup files.
  2. Restore

For Developer

1. Introduction

  • Fork this repo to build your own image with ERPNext and list of custom Frappe apps.
  • Change nginx/Dockerfile and add required apps. Refer comments in the file.
  • Change worker/Dockerfile and add required apps.

Example file uses following apps:

2. Build images

Execute from root of app repo.

For nginx:

# For version-12
docker build --build-arg=FRAPPE_BRANCH=version-12 --build-arg=GITHUB_OWNER=<github-username> -t custom-erpnext-nginx:v12 nginx

# Example:
docker build --build-arg=FRAPPE_BRANCH=version-12 --build-arg=GITHUB_OWNER=msf4-0 -t custom-erpnext-nginx:version-12 nginx

For worker:

# For version-12
docker build --build-arg=FRAPPE_BRANCH=version-12 --build-arg=GITHUB_OWNER=<github-username> -t custom-erpnext-worker:version-12 worker

# Example:
docker build --build-arg=FRAPPE_BRANCH=version-12 --build-arg=GITHUB_OWNER=msf4-0 -t custom-erpnext-worker:version-12 worker

3. Push images to Docker Hub

  1. Steps to create a Docker Hub, and push images to it.
  2. Possible troubleshoot:
    1. When you face denied: requested access to the resource is denied when pushing images, run docker login and enter your credentials. Then push image again.

4. (Optional) Configure env-example

  1. You may need to change the DOCKER_USERNAME in env-example to the username of the Docker Hub account in which you have pushed your images to.
  2. Copy env-example into .env by running cp env-example .env.

5. Start up

  1. The following commands should be executed on the ~/some/path/Integrated-Resource-Planning-System-IRPS directory
  2. docker-compose -p <project_name> up -d
  3. docker logs <project_name>_site-creator_1 -f
    1. If you got a no such container error, you may need to change to docker logs <project_name>-site-creator-1 -f
  4. After the site_creator container exited, open a browser, you can access ERPNext on localhost:8000 or 127.0.0.1:8000.
  5. You can push the changes back to this repo (or your own repo if you forked one from this repo).

License

This software is licensed under the GNU GPLv3 LICENSE © Selangor Human Resource Development Centre. 2021. All Rights Reserved.

integrated-resource-planning-system-irps's People

Contributors

chiajunshen avatar drayang avatar leexy0 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  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.