Skip to content

Instantly share code, notes, and snippets.

View freemanirl's full-sized avatar

Brandon Freeman freemanirl

  • Something Utility
  • Grand Rapids, MI
View GitHub Profile
@freemanirl
freemanirl / progressbar.php
Created June 27, 2014 16:14
Something to try and do a progress bar.
public function showProgress($total, $current, $message = '')
{
$this->cachedMessage = str_repeat("\x08", strlen($this->cachedMessage));
$percentComplete = ($current/$total);
$completedCharacters = ceil($percentComplete * $this->totalProgressCharacters);
$bar = str_repeat("*", $completedCharacters);
$bar = str_pad($bar, $this->totalProgressCharacters, " ");
$bar = "[" . $bar . "] ";
yum remove -y php*
yum install -y epel-release vim rsync git git-core zsh ntp screen nano wget htop gcc tree nginx net-tools
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
yum install -y php56w php56w-mbstring php56w-xml php56w-fpm php56w-pdo php56w-mysqli
sudo sed -ri 's/^(;)(cgi.fix_pathinfo=)(1)$/\2'0'/' /etc/php.ini
sudo sed -ri 's/^(listen = )(127.0.0.1:9000)$/\1\/var\/run\/php-fpm\/php-fpm.sock/' /etc/php-fpm.d/www.conf
sudo sed -ri 's/^(;)(listen.owner = )(nobody)$/\2'nginx'/' /etc/php-fpm.d/www.conf
sudo sed -ri 's/^(;)(listen.group = )(nobody)$/\2'nginx'/' /etc/php-fpm.d/www.conf
server {
listen 80; ## listen for ipv4; this line is default and implied
#server_name "~^(?<sub>.+)\.something\.com$";
#root /var/www/$sub/current/public;
server_name something.com;
root /var/www/site/current/public;
index index.html index.htm index.php;
@freemanirl
freemanirl / well-known.conf
Last active November 3, 2016 13:19
Well Known Nginx Conf For LetsEncrypt
location ~ /.well-known {
allow all;
}
@freemanirl
freemanirl / ssl-redirect.conf
Created November 3, 2016 13:02
Global SSL Redirect for Nginx
return 301 https://$host$request_uri;
@freemanirl
freemanirl / basic-ssl.conf
Last active November 3, 2016 13:06
Basic LetsEncrypt SSL Conf Nginx
server {
listen 443 ssl;
server_name something.somesite.com;
ssl_certificate /etc/letsencrypt/live/something.somesite.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/something.somesite.com/privkey.pem;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
@freemanirl
freemanirl / jenkins-ssl-proxy.conf
Created November 3, 2016 13:08
LetsEncrypt Nginx SSL Proxy Jenkins
upstream jenkins {
server 127.0.0.1:8080 fail_timeout=0;
}
server {
listen 443 default ssl;
server_name jenkins.somesite.com;
ssl_certificate /etc/letsencrypt/live/jenkins.somesite.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/jenkins.somesite.com/privkey.pem;
@freemanirl
freemanirl / jenkins_proxy.conf
Created November 3, 2016 13:10
Basic Nginx Proxy for Jenkins
upstream app_server {
server 127.0.0.1:8080 fail_timeout=0;
}
server {
listen 80;
server_name jenkins.somesite.com;
location / {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
@freemanirl
freemanirl / ssl-proxy-jenkins.sh
Created November 3, 2016 13:18
LetsEncrypt Jenkins SSL Proxy Nginx
#!/bin/bash
yum install -y epel-release nginx
yum install -y certbot
sudo setsebool -P httpd_can_network_connect 1
# install well-known conf in nginx.
systemctl restart nginx.service
certbot certonly -a webroot --webroot-path=/usr/share/nginx/html -d jenkins.somesite.com
@freemanirl
freemanirl / create pem.sh
Created November 5, 2016 13:58
Creating a PEM file for deployment users.
su - deploy
mkdir .ssh && cd .ssh
ssh-keygen -b 2048 -t rsa -f key -C deploy
cat > authorized_keys < key.pub
chmod 0700 ~/.ssh; chmod 0600 ~/.ssh/authorized_keys