Comments (5)
You shouldn't have to recreate the DinD environment instance. But in any case, I'm not sure what you mean by "over here too". You mean upstream in this repo?
What do the expose flags give you?
from envy.
You shouldn't have to recreate the DinD environment instance.
But what if we want / need to upgrade the DinD image to a new Docker version or switch over to some other image based on another distro? As of current master (and based on my current Docker knowledge) I think that would require us to recreate things from scratch right?
For sure we can figure out a way of grabbing the volume and reusing it for a new DinD instance but by keeping it on a well known place I believe will make things easier 😄
But in any case, I'm not sure what you mean by "over here too". You mean upstream in this repo?
Right on! I'm hacking away on a separate repo and I'm holding back from sending PRs this way to avoid the noise as I saw on your video that you are putting up some cool things in Go. I just want to make sure I'm relying on appropriate behavior that is likely to land on Envy's core to avoid having trouble upgrading my environments on the future.
What do the expose flags give you?
With that I was able to attach a simple nginx container on a docker events
stream and automagically expose DinD container's --expose
d ports from http://<port>-<environment>.envy.host:80
. Similar to the envy-proxy project mentioned on another issue on this repo, with the difference being the fact that we can hit any port out of the port 80
on the "outer world", allowing me to access multiple web apps running on different ports under the same environment.
I know you are planning to use iptables for port redirection but I still need to be able to access the web apps from port 80
regardless of the underlying port exposed and the reason behind that is some firewall rules I face on a couple networks I plan to use Envy from 😞
from envy.
Good point on upgrading DinD. I just don't expect it should be restarted
for ports. But because it would need to be recreated eventually, a volume
mounted with host makes sense.
Glad you're exploring more and sending back feedback like this.
Okay cool, I just wanted to make sure you didn't find something iptables
wouldn't cover. The iptables bit will allow arbitrary socket traffic to be
exposed, not just web, and it would behave the same except for having an
HTTP frontend involved. Perhaps the admin sets up a shared environment to
manage the system NGINX...
On Tue, Jul 14, 2015 at 7:31 PM, Fabio Rehm [email protected]
wrote:
You shouldn't have to recreate the DinD environment instance.
But what if we want / need to upgrade the DinD image to a new Docker
version or switch over to some other image based on another distro? As of
current master (and based on my current Docker knowledge) I think that
would require us to recreate things from scratch right?For sure we can figure out a way of grabbing the volume and reusing it for
a new DinD instance but by keeping it on a well known place I believe will
make things easier [image: 😄]But in any case, I'm not sure what you mean by "over here too". You mean
upstream in this repo?Right on! I'm hacking away on a separate repo
https://github.com/fgrehm/devstep-envy and I'm holding back from
sending PRs this way to avoid the noise as I saw on your video that you are
putting up some cool things in Go. I just want to make sure I'm relying on
appropriate behavior that is likely to land on Envy's core to avoid having
trouble upgrading my environments on the future.What do the expose flags give you?
With that I was able to attach a simple nginx container on a docker events
stream and automagically expose DinD container's --exposed ports from
http://-.envy.host:80. Similar to the envy-proxy
project mentioned on another issue on this repo, with the difference being
the fact that we can hit any port out of the port 80 on the "outer
world", allowing me to access multiple web apps running on different ports
under the same environment.I know you are planning to use iptables for port redirection but I still
need to be able to access the web apps from port 80 regardless of the
underlying port exposed and the reason behind that is some firewall rules I
face on a couple networks I plan to use Envy from [image: 😞]—
Reply to this email directly or view it on GitHub
#42 (comment).
Jeff Lindsay
http://progrium.com
from envy.
@fgrehm I actually just added support for multiple ports on envy-proxy. just pass in -e PROXY_PORTS=80,8080,3000 -p 80:80 -p 8080:8080 -p 3000:3000
Sounds like you did something similar to envy-proxy, which just uses nginx to proxy to the dind and uses docker-gen to auto gen the nginx conf
from envy.
@jgallen23 cool! I'll give it another spin and will see if I can be of any help over there 😄 🍻
from envy.
Related Issues (20)
- support github personal access tokens for web auth HOT 4
- Docs HOT 1
- Proposal: Add support for defining environments from user's homedir HOT 5
- expose port for web server HOT 11
- Automatically roll back when build fail? HOT 2
- a way to pull docker image from host HOT 3
- Containers are not removed when websocket is closed HOT 1
- create standard startup / rc script HOT 1
- Session cleanup HOT 4
- debug environment crash HOT 4
- list environments HOT 3
- tmux? HOT 3
- docker volumes inside envy HOT 5
- Error response from daemon: client and server don't have same version (client : 1.19, server: 1.18) HOT 2
- clock HOT 4
- terminal dimensions not getting updated on resize HOT 3
- Restrict access based on github organizations HOT 1
- Use official docker image for DinD HOT 1
- Please rebuild progrium/envy; still uses HOST_DATA, not HOST_ROOT HOT 12
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from envy.