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 Desktop (MacOS) #115

Closed
1 task done
rpsu opened this issue Nov 28, 2019 · 11 comments
Closed
1 task done

Add Docker Desktop (MacOS) #115

rpsu opened this issue Nov 28, 2019 · 11 comments

Comments

@rpsu
Copy link

rpsu commented Nov 28, 2019

Tool information

  • Tool name: Docker Desktop (MacOS Docker.app)
  • Add or update? Add
  • Desired version: 2.1.*
  • Approximate size:
  • If this is an add request:

Virtual environments affected

  • macOS 10.15

Can this tool be installed during the build?
While the app installation itself works, initial startup requires runner user's password. This I do not have nor can set via password reset (as explained by Thomas Baillie from GitHub Developer Support in an support request email, Nov 27, 10:10 AM UTC ).

Docker.app refuses to start with sudo. It must to be started as a regular user and user must provide a password via UI dialog (which could be done with applescript if I had OR could reset the runner user's password).

This is not just adding the Docker.app, but also starting it with correct permissions so that the network settings can be configured. After the initial launch Docker.app can be stopped, and future startups should work fine with no passwords nor sudo's involved.

Project, branch and workflow that is an example of this need (trying to launch a docker-compose -based tool for testing in MacOS):
https://github.com/Exove/local-docker/blob/ci-jobs-initial-test-to-pass/.github/workflows/macos-latest--tests.yml

Are you willing to submit a PR?
Sure if I only get some instructions how to achieve this.

@rpsu rpsu changed the title Update/Add [tool name] Add Docker Desktop (MacOS) Nov 28, 2019
@kaylangan kaylangan added Area: Containers enhancement New feature or request labels Jan 10, 2020
@github-actions
Copy link
Contributor

This issue has not had any activity for 45 days and will be closed in 45 days if there continues to be no activity.

@rpsu
Copy link
Author

rpsu commented Feb 25, 2020

I'd need some help how to add the Docker as this repository contains merely a list of available binaries, but not the binaries .

@maxim-lobanov
Copy link
Contributor

Hello @rpsu , thank you for your suggestion!
We already have a bunch of docker cli tools on macOS image: docker, docker-compose, docker-machine. Do they cover your use-case?
Docker Desktop looks pretty huge (2GB) and we worry if it can work as expected on VM (without GUI).
It would be great, if you could share a bit more context on your use-case?

@rpsu
Copy link
Author

rpsu commented Apr 9, 2020

My use case is I'd like to be able to have CI test for an app exactly the way end users do it in MacOS. docker is a client, docker-machine seems to need a VirtualBox to function properly, or have the Docker.app to contain all of that - including the hypervisor.

An alternative option - using docker-machine and Xhyve hypervisor seems not to work (at least I have not found a way yet).

https://github.com/Exove/local-docker/pull/103/checks?check_run_id=574053551

So there are 2 ways I can think of this could be solved:

  1. Have some way to install Drupal Desktop and launch it (which requires runner user's password, not just sudo perms) - scriptable if the password can be reset or is known
  2. Use existing docker (client), docker-compose and docker-machine, which requires a hypervisor compatible with docker (client)

Based on the tests currently launching the docker for the first time requires users password

@rpsu
Copy link
Author

rpsu commented Apr 9, 2020

Screenshot 2020-04-09 at 16 57 53

@maxim-lobanov
Copy link
Contributor

@rpsu , thank you for provided context.

JFYI: We are installing virtualbox to macOS machines in scope of #433 , changes are already merged. The new image is on way.

@rpsu
Copy link
Author

rpsu commented Apr 14, 2020

thanks!
Is this the correct place to keep eye on to see the new image?
https://github.com/actions/virtual-environments/blob/master/images/macos/macos-10.15-Readme.md

@maxim-lobanov
Copy link
Contributor

Yep, that is correct location. Also we will update #433 as soon as update is available

@alepauly
Copy link
Contributor

@rpsu looks like Docker licensing doesn't actually allow us to put this in the hosted images so we won't be adding it at this time. Thanks for the suggestion!

@rpsu
Copy link
Author

rpsu commented Apr 29, 2020

@alepauly okay, I see. I think I can manage with the Virtualbox providing the VM. I do have some difficulties with bash variables (seemingly not working as they do in desktop), can you point me to someone or some docs how to play with them in macos VM?

@maxim-lobanov
Copy link
Contributor

@rpsu , Am I right that you need some docs about configuring Docker + Virtualbox on hosted machine?
I think this guide will work for you. virtualbox is already installed to the images. Other software have to be installed in runtime

paul-thompson-helix added a commit to helix-collective/dnit-utils that referenced this issue Sep 2, 2020
Mac on github actions doesn't have docker installed.
actions/runner-images#115
paul-thompson-helix added a commit to helix-collective/dnit-utils that referenced this issue Sep 3, 2020
* Import deno / dnit utils

* Add github workflows for CI test

* Run docker build in runConsole

* Drop CI on macOS-latest

Mac on github actions doesn't have docker installed.
actions/runner-images#115

* Add export of docker functions

* Flatten docker run command and args to one list cmds : string[]

* Split dockerRun into smaller utils.

* Option for docker interactive opt-out

* Updates to runProcess

* Drop back to single process instead of processPipe
* Keep output statuses and stderrs, stdouts
kierandrewett added a commit to dothq/browser-desktop that referenced this issue Feb 14, 2021
jakesylvestre added a commit to xplorfin/docker-utils that referenced this issue Mar 4, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants