Depends on #7. With this PR, it's possible to bring up the whole system up and down with:
$ ./go start
$ ./go stop
To run and test locally, update /etc/hosts with the following (substituting the IP addresses with that returned from docker-machine ip) before visiting the hosts in your browser:
# Testing locally with 18F/knowledge-sharing-toolkit
# Run `docker-machine env` to get the current IP.
192.168.99.100 pages.18f.gov
192.168.99.100 pages-staging.18f.gov
192.168.99.100 pages-internal.18f.gov
192.168.99.100 pages-releases.18f.gov
192.168.99.100 team-api.18f.gov
192.168.99.100 hub.18f.gov
192.168.99.100 handbook.18f.gov
With this setup all the required secrets in place (which I'll document very soon), you'll have a complete system equivalent to currently running on those hosts.
Well, almost. There's couple rough spots to smooth off. But mostly.
A really nice unexpected feature: The Docker network 18f/knowledge-sharing-toolkit created by ./go create_network command binds the container names to Docker network addresses via a local DNS mechanism. This means that all of the configurations needed to be updated to reference specific container "hosts", rather than "localhost" or "127.0.0.1". Consequently, the dependencies between services become more explicit via the configuration files.
There's another goodie documented in the commit message for f235b54db4154949051057de73509c218b9724bd, but you can just read that for yourself. (Too long to paste here.)
Really close to having it all done now, modulo a couple small fixes/features for 18F/lunr-server and 18F/pages-server (notably doing a s3 sync after successful builds). Plus, I still have to add the Hub, which won't be too hard at this point, I don't think.
Depends on #7. With this PR, it's possible to bring up the whole system up and down with:
To run and test locally, update
/etc/hosts
with the following (substituting the IP addresses with that returned fromdocker-machine ip
) before visiting the hosts in your browser:With this setup all the required secrets in place (which I'll document very soon), you'll have a complete system equivalent to currently running on those hosts.
Well, almost. There's couple rough spots to smooth off. But mostly.
A really nice unexpected feature: The Docker network 18f/knowledge-sharing-toolkit created by
./go create_network
command binds the container names to Docker network addresses via a local DNS mechanism. This means that all of the configurations needed to be updated to reference specific container "hosts", rather than "localhost" or "127.0.0.1". Consequently, the dependencies between services become more explicit via the configuration files.There's another goodie documented in the commit message for f235b54db4154949051057de73509c218b9724bd, but you can just read that for yourself. (Too long to paste here.)
Really close to having it all done now, modulo a couple small fixes/features for 18F/lunr-server and 18F/pages-server (notably doing a
s3 sync
after successful builds). Plus, I still have to add the Hub, which won't be too hard at this point, I don't think.cc: @jcscottiii @ccostino @afeld @catherinedevlin @batemapf @ertzeid @mtorres253