Giter Club home page Giter Club logo

ansipress's Introduction

AnsiPress

Join AnsiPress Slack Channel

GitHub contributors GitHub closed issues GitHub issues

AnsiPress

Quick Start

✓ = Under Testing ⚠ = Under Progress

Features

✓ True Shared Hosting

✓ NGINX + PageSpeed

✓ PHP 7.1 With Different Master Process for Each User

✓ MariaDB

✓ WordPress (W3TC & FastCGI Cache)

✓ Google PageSpeed Configuration

✓ Fail2Ban

⚠ Lets Encrypt (ETA in 2 Weeks)

⚠ NGINX Redis Module (ETA in 5 weeks)

⚠ Laravel Support (ETA in 10 weeks)

⚠ Drupal Support (ETA in 15 weeks)

Operating System:

  • ✓ Ubuntu 16.04
  • ✓ Debian 8
  • ⚠ CentOS 7

Port Requirements:

Name Port Number Inbound Outbound
SSH 22
HTTP 80
HTTPS/SSL 443
GPG Key Server 11371

Ansible - Install Ansible

Clone AnsiPress

$ git clone [email protected]:AnsiPress/AnsiPress.git
$ cd AnsiPress && git checkout develop

Setup SSH Server Login Details

  • AnsiPress required you can login to remote server via ssh AnsiPress.local
  • Change the AnsiPerss.local server name
  • Make sure you are able to connect server via ssh example.com
  • Refer - SSH Configuration

Run the AnsiPress Playbook

$ ansible-playbook -i hosts setup.yml --extra-vars="username=html website_name=html.com website_type=html"

$ ansible-playbook -i hosts setup.yml --extra-vars="username=php website_name=php.com website_type=php"

$ ansible-playbook -i hosts setup.yml --extra-vars="username=mysql website_name=mysql.com website_type=mysql"

$ ansible-playbook -i hosts setup.yml --extra-vars="username=wp website_name=wp.com website_type=wp"

$ ansible-playbook -i hosts setup.yml --extra-vars="username=wp website_name=w3tc.com website_type=w3tc"

$ ansible-playbook -i hosts setup.yml --extra-vars="username=wp website_name=wpfc.com website_type=wpfc"

Track Development

Milestone

Donation

PayPal Donate

Yes you can! Just click on the image above ;)

AnsiPress is made available for free. Any donations toward maintaining it and adding new features are greatly appreciated.

ansipress's People

Contributors

harshadyeola avatar miteshshah avatar

Stargazers

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

Watchers

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

ansipress's Issues

Getting more done in GitHub with ZenHub

Hola! @MiteshShah has created a ZenHub account for the AnsiPress organization. ZenHub is the only project management tool integrated natively in GitHub – created specifically for fast-moving, software-driven teams.


How do I use ZenHub?

To get set up with ZenHub, all you have to do is download the browser extension and log in with your GitHub account. Once you do, you’ll get access to ZenHub’s complete feature-set immediately.

What can ZenHub do?

ZenHub adds a series of enhancements directly inside the GitHub UI:

  • Real-time, customizable task boards for GitHub issues;
  • Multi-Repository burndown charts, estimates, and velocity tracking based on GitHub Milestones;
  • Personal to-do lists and task prioritization;
  • Time-saving shortcuts – like a quick repo switcher, a “Move issue” button, and much more.

Add ZenHub to GitHub

Still curious? See more ZenHub features or read user reviews. This issue was written by your friendly ZenHub bot, posted by request from @MiteshShah.

ZenHub Board

Create New User

Setup Following Things

User
Password
Shell - /bin/bash
Home Directory

support for non-root users

On Azure it does not support ssh to root users directly. so I think there is need to make AnsiPress feasible with non-root user which has sudo privileges.

Incomplete install instructions

I followed the installation instructions on a from scratch Ubuntu 18.10 machine and it seems to be running into an issue where Ansible can't parse AnsiPress/hosts.

Add step to check internet connection

Sometimes Nameservers configuration creates mess while setting up machine.
We should have a step involved which will help us detecting this at the start.

Shared Hosting Security

ansible-playbook -i hosts setup.yml --extra-vars="username=php website_name=php.com website_type=php"

ansible-playbook -i hosts setup.yml --extra-vars="username=wp website_name=wp.com website_type=wp"

Now create following file

vim /home/php/vhosts/php.com/htdocs/read.php
<?php
echo file_get_contents('/home/wp/vhosts/wp.com/wp-config.php');
?>
vim /home/php/vhosts/php.com/htdocs/index.php
<?php
echo file_get_contents('/home/php/vhosts/php.com/wp-config.php');
?>
cp -av /home/wp/vhosts/wp.com/wp-config.php /home/php/vhosts/php.com/
chown -R php:php /home/php/vhosts/

Whole config file has been displaying :(

Let's Encrypt support

Hi,

Is there any ETA for Let's Encrypt support? Or is there any workaround meanwhile?

Thanks!

Edit: Looks like using Certbot was really easy. I'm leaving this ticket open just in case anyone else would like to comment about this.

Log all unix shell commands submitted by all users

vim /etc/bashrc
export PROMPT_COMMAND='RETRN_VAL=$?;logger -p local6.debug "$(whoami) [$$]: $(history 1 | sed "s/^[ ]*[0-9]\+[ ]*//" ) [$RETRN_VAL]"'
vim /etc/syslog.conf
local6.* /var/log/cmdlog.log

Enable PHP Services at Boot Time

-rwxr-xr-x 1 root root 4.7K May 11 14:44 /etc/init.d/php7.1-fpm
-rw-r--r-- 1 root root 4.7K May 18 10:11 /etc/init.d/php7.1-mitesh

After reboot we need to manually start

service php7.1-mitesh restart

Bug

For non-wordpress and html website this should not be involve

TASK [print : Getting WordPress Setup Information, Hold on...] ************************************************************************************************
fatal: [nolte-staging.com]: FAILED! => {"failed": true, "msg": "'random_password' is undefined"}

Remove reboot as default on system package updates

Sometimes while creating new website AnsiPress updates server packages which might recommend server reboot when the updates are complete. In this case, it is affecting other sites as on server reboot the sites go down which might be production websites.

Reboot Optimize

  • name: Wait for SSH to come up
    wait_for: host={{ host }} port=22 delay=60 timeout=320 state=started

PHP Should Respect UMASK Value

<?php
  $dirLocation = getenv("DOCUMENT_ROOT") . "/folder";
  $fileLocation = getenv("DOCUMENT_ROOT") . "/file.txt";
  if( is_dir($dir) === false )
  {
    mkdir($dirLocation);
  }
  $file = fopen($fileLocation,"w");
  $content = "Your text here";
  fwrite($file,$content);
  fclose($file);
?>

Check newly created file/dir and its should be respect current umask value.

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.