- download these two files to the same directory
- docker-compose up
- http://localhost should show you "it works" which is apache being reverse-proxied through nginx
- docker sets up DNS for
web
based on compose service name so the nginx front-end can find http://web - proxy is set to listen on public port 80 on host so it'll receive incoming traffic, then push to httpd
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
warning: /proc/config.gz does not exist, searching other paths for kernel config ... | |
info: reading kernel config from /boot/config-4.4.0-64-generic ... | |
Generally Necessary: | |
- cgroup hierarchy: properly mounted [/sys/fs/cgroup] | |
- apparmor: enabled, but apparmor_parser missing | |
(use "apt-get install apparmor" to fix this) | |
- CONFIG_NAMESPACES: enabled | |
- CONFIG_NET_NS: enabled | |
- CONFIG_PID_NS: enabled |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# so docker cloud now has swarms fleet mgmt | |
# and you can use something like this to connect from cli to your swarm via docker remote api: | |
docker run --rm -ti -v /var/run/docker.sock:/var/run/docker.sock -e DOCKER_HOST dockercloud/client bretfisher/swarm1 | |
# but maybe we can put that in a bash alias to make it easier | |
alias cswarm="docker run --rm -ti -v /var/run/docker.sock:/var/run/docker.sock -e DOCKER_HOST dockercloud/client" | |
#then | |
cswarm bretfisher/dude-swarm1 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# first install pygmentize to the mac OS X or macOS system with the built-in python | |
sudo easy_install Pygments | |
# then add alias to your ~/.bash_profile or ~/.bashrc or ~/.zshrc etc. | |
alias pcat='pygmentize -f terminal256 -O style=native -g' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
FROM yourdockername/base-php-nginx:latest AS build | |
# BUILD STAGE | |
# the primary reason we have two build stages is so SSH key of private repo's will never | |
# be in final image | |
# COPY IN BUILD SSH KEY | |
# It won't be copied to final image | |
# add this build arg to compose file | |
ARG BUILDKEY | |
RUN if [ -z "$BUILDKEY" ]; then echo "BUILDKEY SSH NOT SET - ERROR"; exit 1; else : ; fi |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
version: '3' | |
# vcap.me is a wildcard domain that resolves to localhost | |
# in case you need to pass URL's around from browser to | |
# containers this could help you get around localhost problem | |
services: | |
# use www.vcap.me to access web containter from host | |
# use api.vcap.me to access api container from host | |
proxy: |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Homebrew build logs for mistertea/et/et on macOS 10.13.2 | |
Build date: 2017-12-13 05:58:36 |
- it's best to replace nodes, don't do apt/yum upgrades.
- both would work, but VM replacment forces me to think of it as immutable and prevents making pets
- if you don't want to update join scripts for manager IP's, then do something like Elastic IP's so manager IP's won't change.
Lets assume you have 3 managers and 3 workers on 17.06 and you want to update to 17.12
- managers: m1, m2, m3
Just run this from your CLI and it'll drop you in a container with full permissions on the Moby VM. Only works for Moby Linux VM (doesn't work for Windows Containers). Note this also works on Docker for Mac.
docker run -it --rm --privileged --pid=host justincormack/nsenter1
more info: https://github.com/justincormack/nsenter1
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
dcb='docker-compose build' | |
dcdn='docker-compose down' | |
dce='docker-compose exec' | |
dcl='docker-compose logs' | |
dclf='docker-compose logs -f' | |
dco=docker-compose | |
dcps='docker-compose ps' | |
dcr='docker-compose run' | |
dcrestart='docker-compose restart' | |
dcrm='docker-compose rm' |