codewars / deprecated-codewars-docker

[Deprecated] Docker sandboxes for code katas in various languages.
BSD 2-Clause "Simplified" License
4 stars 2 forks source link

Setting up initial shipyard build #8

Closed funkymonkeymonk closed 10 years ago

funkymonkeymonk commented 10 years ago

Docker does not support 32bit architectures as per: https://github.com/dotcloud/docker/issues/136

jhoffner commented 10 years ago

Looks great. Is this fully working?

funkymonkeymonk commented 10 years ago

Works for me. Takes a bit to build. I would suggest switching from Ubuntu base to boot2docker which is a lot lighter. Also the wait statement is a hack. The agent container needs to come up after the shipyard server comes up. If the shipyard webserver doesn't show any connected agents:

vagrant ssh docker ps -a | grep agent docker stop docker start

funkymonkeymonk commented 10 years ago

I'm planning to enhance this to make a small shipyard cluster and also define a beefier resource allocation to each VM. Figuring this setup needs at least 1core per VM and 2G ram per VM. It should spin up 1 shipyard-host server then n number of additional shipyard agents, as defined by either an environment variable or a command line argument.

This also needs to be enhanced to auto-register the ship yard agents.

So it works, but there is still a lot to do before it's modeling a real system.

jhoffner commented 10 years ago

Hmm. Sounds much heavier than I originally expected. How much work would it take to make the shipyard integration optional? So that someone could choose to boot an image without it? I just worry that the image becomes a beast to run and some developer's machines won't be able to handle it.

funkymonkeymonk commented 10 years ago

In all fairness, I'm also being generous with the specs. Realistically if you choose not to spin up any agents, to test distributed environments, it won't be terrible. I also feel like a lot of the specs right now are because your booting off of a full Ubuntu Trusty Thar environment. Switch to CoreOS or boot2docker should bring the spec down a lot.

Try spinning up the Vagrantfile yourself. Unfortunately I likely won't get to till tomorrow night and until I do my opinion is bro science.

jhoffner commented 10 years ago

Good point. There is also the phusion/ubuntu-14.04-amd64 image which I believe is lighter. See https://gist.github.com/wsargent/7049221

funkymonkeymonk commented 10 years ago

Whatever floats your boat. Is there a need to stay Ubuntu based? If you're looking for a fully docker workflow, you may want a distro built for it.

CoreOs Project Atomic Boot2Docker

jhoffner commented 10 years ago

CoreOS and Project Atomic looks great! I need to spend some time researching these more. Keep in mind that I am not a sys admin guy. I stick to heroku as much as possible :) I'm just the acting maintainer until Codewars hires someone more qualified to take the project over.

funkymonkeymonk commented 10 years ago

I feel you. Want me to build up the Vagrantfile with all three as options?

funkymonkeymonk commented 10 years ago

Food for thought. CoreOS vs. Project Atomic: A Review

jhoffner commented 10 years ago

Thanks for the offer. All three options might just cause more confusion right now. We still need to focus on the basics of just getting the bits of this project that are already built running smoothly on a vagrant image.

I just created a separate shipyard branch. Can you please resubmit this PR to that branch. I'm thinking that we may want to isolate the complexity for now until we A: have a working baseline going and B: have the Shipyard stuff fully fleshed out.

funkymonkeymonk commented 10 years ago

Will do.