Reproducing a Traefik with SSL and Portainer setup on a 2 Node Docker Swarm
Install Docker on both nodes with a Bootstrap Script:
$ curl https://gitlab.com/rbekker87/scripts/raw/master/setup-docker-ubuntu.sh | bash
| <?php | |
| wp_load_translations_early(); | |
| $protocol = wp_get_server_protocol(); | |
| header( "$protocol 503 Service Unavailable", true, 503 ); | |
| header( 'Content-Type: text/html; charset=utf-8' ); | |
| header( 'Retry-After: 30' ); | |
| ?> | |
| <!DOCTYPE html> | |
| <html> |
| <?php | |
| // Geo Redirect using Cloudflare | |
| $activepage = $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI']; | |
| $country_code = $_SERVER["HTTP_CF_IPCOUNTRY"]; | |
| $page_from = "www.domain.tld/"; | |
| $page_to = "www.newdomain.tld/"; | |
| ?> | |
| <!-- Country Code : <?php echo $country_code; ?> --> | |
| <!-- Active URL : <?php echo $activepage; ?> --> |
| <?php | |
| /** | |
| * Add Continue Shopping Button on Cart Page | |
| * Add to theme functions.php file or Code Snippets plugin | |
| */ | |
| add_action( 'woocommerce_before_cart_table', 'woo_add_continue_shopping_button_to_cart' ); | |
| function woo_add_continue_shopping_button_to_cart() { |
| <div id="counter"> | |
| <button @click="up()">+</button> | |
| <p id="count">{{ value }}</p> | |
| <button @click="down()">-</button> | |
| </div> | |
| <script> | |
| var counter = new Vue({ | |
| el: '#counter', | |
| data: { | |
| value: 0 |
| // Use Gists to store code you would like to remember later on | |
| console.log(window); // log the "window" object to the console |
| javascript:(function({ | |
| var INSTAPAPER=true,w=window,d=document,pageSelectedTxt=w.getSelection?w.getSelection():(d.getSelection)?d.getSelection():(d.selection?d.selection.createRange().text:0),pageTitle=d.title,pageUri=w.location.href,tmplt=""; | |
| tmplt="From ["+pageTitle+"]("+pageUri+"):\n\n"; | |
| if(pageSelectedTxt!="") { | |
| pageSelectedTxt=">%20"+pageSelectedTxt; | |
| pageSelectedTxt=pageSelectedTxt.replace(/(\r\n|\n+|\r)/gm,"\n"); | |
| pageSelectedTxt=pageSelectedTxt.replace(/\n/g,"\n>%20\n>%20"); | |
| w.location.href="nvalt://make/?txt="+encodeURIComponent(tmplt+pageSelectedTxt)+"&title="+encodeURIComponent(pageTitle) | |
| } | |
| else { |
| # to generate your dhparam.pem file, run in the terminal | |
| openssl dhparam -out /etc/nginx/ssl/dhparam.pem 2048 |