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

Add docker-compose by default #18

Closed
tomaswarynyca opened this issue Nov 26, 2020 · 3 comments
Closed

Add docker-compose by default #18

tomaswarynyca opened this issue Nov 26, 2020 · 3 comments
Assignees
Labels
enhancement New feature or request question Further information is requested
Milestone

Comments

@tomaswarynyca
Copy link
Collaborator

And if possible, would be great to have docker-compose as part of the OS available as well

The user @x-jokay proposed in the issues #6 add by default docker-compose in BurmillaOS
We could create an option in the cloud-config.yml to enable docker-compose

@tomaswarynyca tomaswarynyca added the question Further information is requested label Nov 26, 2020
@PrplHaz4
Copy link

I'd use this also - with the ability to update the version of compose as needed. This might be more tricky than it seems as there is probably some redundancy with ros service - but migrating that to "plain" compose seems like an extra nice-to-have goal.

@olljanat olljanat added the enhancement New feature or request label Nov 27, 2020
@olljanat
Copy link
Member

It is very easy add docker-compose as system service.

Tricky part is get that how to command available inside of console container. Code contains some extra logic to handle it for user docker and we most likely need something similar.

This code makes user docker commands available to console:

os/cmd/control/util.go

Lines 36 to 59 in 0308bfe

func symLinkEngineBinary() []symlink {
baseSymlink := []symlink{
{"/usr/share/ros/os-release", "/usr/lib/os-release"},
{"/usr/share/ros/os-release", "/etc/os-release"},
{"/var/lib/rancher/engine/docker", "/usr/bin/docker"},
{"/var/lib/rancher/engine/dockerd", "/usr/bin/dockerd"},
{"/var/lib/rancher/engine/docker-init", "/usr/bin/docker-init"},
{"/var/lib/rancher/engine/docker-proxy", "/usr/bin/docker-proxy"},
// >= 18.09.0
{"/var/lib/rancher/engine/containerd", "/usr/bin/containerd"},
{"/var/lib/rancher/engine/ctr", "/usr/bin/ctr"},
{"/var/lib/rancher/engine/containerd-shim", "/usr/bin/containerd-shim"},
{"/var/lib/rancher/engine/runc", "/usr/bin/runc"},
// < 18.09.0
{"/var/lib/rancher/engine/docker-containerd", "/usr/bin/docker-containerd"},
{"/var/lib/rancher/engine/docker-containerd-ctr", "/usr/bin/docker-containerd-ctr"},
{"/var/lib/rancher/engine/docker-containerd-shim", "/usr/bin/docker-containerd-shim"},
{"/var/lib/rancher/engine/docker-runc", "/usr/bin/docker-runc"},
}
return baseSymlink
}

but I have not yet found that how container files gets visible to /var/lib/rancher/engine in first place.

@tomaswarynyca
Copy link
Collaborator Author

So by putting docker-compose in /var/lib/rancher/engine/docker-compose for example and making a symbolic link /usr/bin/docker-compose should the console recognize it?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request question Further information is requested
Projects
None yet
Development

No branches or pull requests

3 participants