Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

dynamic configuration? #13

Closed
ror6ax opened this issue Jan 25, 2018 · 16 comments
Closed

dynamic configuration? #13

ror6ax opened this issue Jan 25, 2018 · 16 comments

Comments

@ror6ax
Copy link

ror6ax commented Jan 25, 2018

Hi, great work on this project!

I was wondering if you have ever considered making sshpiper dynamically configurable? Exposing some kind of http api to add or change names/destination pairs on the fly?

Thanks

@tg123
Copy link
Owner

tg123 commented Jan 25, 2018

This is planed and will do in my spare time

Maybe, you can now use file system api to modify working dir to workaround.

@ror6ax
Copy link
Author

ror6ax commented Jan 25, 2018 via email

@ror6ax
Copy link
Author

ror6ax commented Jan 31, 2018

@tg123 , do you want to make the configuration available as REST API or in any other way?

@tg123
Copy link
Owner

tg123 commented Feb 1, 2018

more backend workingdir (eg mysql) and REST API for them will be added.

@tg123
Copy link
Owner

tg123 commented Feb 19, 2018

Hi
mysql upstream driver is now opensourced

you can modify database to manage configuration

@pwFoo
Copy link

pwFoo commented Mar 5, 2018

Some reverse proxy solutions read labels / env variables from containers to generate needed configs.
I built such a solution with docker-gen, but it isn't really production ready because I generate a single file and have to split each line to workdir / file and also delete workdirs if a backend is deleted.

Any have a better idea how to do it? Maybe with docker-gen or another way?

@tg123
Copy link
Owner

tg123 commented Mar 6, 2018

did you try mysql backend upstream driver? it is powered by database

@pwFoo
Copy link

pwFoo commented Mar 10, 2018

Hi @tg123,
haven't tried mysql backend. But I don't know if it will be easier to do, because I need to update, create and delete users.

With docker-gen I can create a csv which need to be parsed by a script (update directories / files or database entries). Single step creation would need a single config file (csv, passwd format for example?) with one user per line for example.

I'll do some more tests to see what will work for me.

@tg123
Copy link
Owner

tg123 commented Mar 10, 2018

I am now working on tools for generating workingdir related files and will add it later

@pwFoo
Copy link

pwFoo commented Mar 16, 2018

Thanks @tg124 !
Any progress with tool for generating workingdir? Would it work with docker-gen / rancher-gen? Need it soon and maybe have to build a script to generate workingdir based on csv.

@pwFoo
Copy link

pwFoo commented Mar 16, 2018

Requirement is dynamically add backends by container env / label.

@tg123
Copy link
Owner

tg123 commented Mar 16, 2018

will update this thread after done
sorry for the slowness (too busy ....)

@pwFoo
Copy link

pwFoo commented Mar 17, 2018

No problem. :)
Maybe you could share your idea or current state? If I can I would help to finish it or just to know how you will do it.

@unitof
Copy link

unitof commented Jun 7, 2018

Heyo! Any updates or changes to this? Trying to set up a reverse proxy to host multiple (very simple) sites, each as a docker container on the same host, but also want the ability to git push deploy to each of them over SSH. If I'm understanding everything correctly, this tool along with docker-gen-based dynamic configuration should work perfectly.

@mickaelperrin
Copy link

For those interested, I just published an automatic docker-ssh-proxy container with docker-gen and sshpiper. This is largely inspired by nginx-proxy.

Any feedback is welcomed.

@tg123 Thanks a lot for your awesome work. So far, here are the things that would simplify the use of your project as an automatic ssh-proxy in docker environment:

  • Add ability to have a single configuration file instead of the directory structure
  • Allow to reload configuration without killing the process

@tg123
Copy link
Owner

tg123 commented Jan 6, 2019

tools added

sshpiperd pipe add -n piper_user -u github.com

will add a pipe between piper and github

@tg123 tg123 closed this as completed Jan 6, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants