Coder Social home page Coder Social logo

theodorosploumis / distros.bid Goto Github PK

View Code? Open in Web Editor NEW
19.0 3.0 14.0 606 KB

A saas to create drupal websites in seconds using docker containers.

Home Page: https://www.distros.bid

License: GNU General Public License v2.0

Shell 1.77% CSS 0.58% PHP 96.16% Dockerfile 1.49%
drupal8 drupal-8 drupal docker docker-images drupal-distribution drupal-distributions paas hacktoberfest hacktoberfest-2022

distros.bid's Introduction

Theodoros Ploumis (he/him)

Hi, I am a full stack Drupal developer and I work for www.eworx.gr.

Portfolio

TheodorosPloumis github stats

Profiles & Accounts

Development Design Social
Website Dribbble LinkedIn
Drupal.org Pinterest Twitter
GitHub Behance
StackExchange
Stackshare.io

Recent contributions

Special thanks to

who provided the amazing tools to generate this dynamic README!

distros.bid's People

Contributors

joshuajabbour avatar theodorosploumis avatar

Stargazers

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

Watchers

 avatar  avatar  avatar

distros.bid's Issues

New Distributions to add

Differences with simplytest.me

  1. Distributions are pre-installed
  2. Faster (startup time less than 30s)
  3. Focusing on showcase and fast testing
  4. Live for only 40 min
  5. No installation errors (due to pre-installed software)
  6. Opened FTP so Admins can upload modules fro the UI
  7. All files, setup configuration and docker images are open source
  8. Every site is an isolated environment using Docker
  9. Ability to access the Database using adminer.php (www.mysite.com/adminer.php)
  10. Ability to get a web command line (www.mysite.com/terminal.php)
  11. Ability to run several software from the cli such as composer, drush, patch, cp, mv etc
  12. No url shortcut to generate the site

Project plan - Marketing

  1. Add a Blog Post on my website
  2. Create a D.O. project
  3. Share on D.O. lists/social
  4. Create social announcements
  5. Better Web UI (menu: about/usage/login, short video or animated gif)
  6. Create Video to promote the project
  7. Add Thumbnails for Distros on the list below (also, show as grid)
  8. Better Ads/Sponsors
  9. Add share buttons
  10. Create GitHub releases
  11. Find a sponsor (sponsors banner)
  12. Add to Drupaltools
  13. Add Docker hub badges
  14. Add to Personal Portfolio

How to update Containers

Start Nginx-proxy

docker run -d -p 8055:80 --name=proxy --restart=always --label name=proxy -v /var/run/docker.sock:/tmp/docker.sock:ro  jwilder/nginx-proxy

Start Portainer

docker run -d --restart=always --label name=portainer -p 9988:9000 -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data --name=portainer portainer/portainer

Open Outreach fails

When selecting Open Outreach, you get the following error message:

{"message":"No such image: drupal8/distros:openoutreach"}

Add Legal and Terms of Use

In order to publish this project on D.O. planet we need to add legal files such as:

  1. Terms of Use
  2. Privacy Policy
  3. FAQs
  4. About

Project plan - Docker actions

Docker containers actions GUI

Using docker php sdk

  1. Start container
  2. Stop container
  3. Create container
  4. Destroy container (with volumes?)
  5. Monitor container logs
  6. Add restart policy
  7. Use data volumes (or flocker)
  8. Destroy container after X hr (using cron on host or host docker api)
  9. Console (bash) to container

(Clone container?)

Awesome

Awesome job - I played around with different distributions - Loved that I could get to the Terminal to play with Drush.

Most of the Drush commands worked except when running drush up -y - That fails.
Also the terminal.php does not change directories. I found another option that does seem to work.
https://github.com/Fluidbyte/PHP-jQuery-Terminal-Emulator

Have you done a write up on how you got this to all work together - It would definitely make an interesting read?
Do you think Docker is ready for production sites yet?

Project plan - Technical Improvements

  1. Add Screenshots for each distribution on the select list.
  2. SSH to docker images from external IPs.
  3. Immediately login Admin after 1st redirect (provide a 1 time login url)
  4. Create Portainer templates for each distro
  5. Change nginx default text for 503 error (link to main domain)
  6. Add patches from the UI form
  7. Use custom subdomain per user
  8. Create Main Site and Agent (docker containers on port 80 and nginx-proxy) with short url.
  9. Create volumes? (mkdir /var/www/$ID)
  10. Use linked containers (mysql, server) from base images with --volumes-from
  11. Create an Ansible stack for server provisioning
  12. Use Makefile to build distros and push on docker hub from travis
  13. Include error reporting on settings.php by default (See https://www.drupal.org/node/158043)
  14. Stats for Distros used
  15. Login to use the site (maybe using a social network) or use a Captcha
  16. Include 7.x distributions
  17. Create a custom Base image
  18. Use Let's Encrypt for main domain
  19. Add a time limit to kill containers

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.