Brew docker instal tidak termasuk mesin docker?

144

Mencoba mengatur buruh pelabuhan dari minuman, namun mesin tampaknya tidak termasuk dalam salah satu formula resmi mana pun.

brew install docker-machine docker-compose

Jadi ini hanya menginstal klien? Apakah tidak ada tong dengan mesin / daemon?

David Karlsson
sumber

Jawaban:

211

Silakan coba lari

brew install docker

Ini akan menginstal mesin Docker, yang akan membutuhkan Docker-Machine (+ VirtualBox) untuk berjalan di Mac.

Jika Anda ingin menginstal Docker untuk Mac yang lebih baru , yang tidak memerlukan virtualbox , Anda dapat menginstalnya melalui Homebrew's Cask:

brew cask install docker
open /Applications/Docker.app
nwinkler
sumber
1
'docker-compose' up hanya memberi saya: kesalahan "Anda mungkin perlu menjalankan docker-machine start default" Saya tidak ingin menjalankan kotak virtual untuk wadah saya, saya ingin menjalankannya secara lokal di mac saya
David Karlsson
4
Saya telah memperbarui jawaban saya untuk menunjukkan cara menginstal Docker untuk Mac, yang tidak memerlukan VirtualBox atau Docker-Machine.
nwinkler
1
Saya dapat melihat bahwa ini memberi saya seluruh aplikasi desktop. Apakah tidak ada cara untuk mendapatkan alat daemon + cli saja, saya ingin menjalankannya di OSX "tanpa kepala".
David Karlsson
15
@DavidKarlsson Aplikasi GUI adalah aplikasi Docker "resmi", Docker Inc. tidak menyediakan paket tanpa kepala untuk Mac OS. Namun, aplikasi GUI berisi utilitas baris perintah. Jika brew cask install dockertidak membuat symlink di usr/local/binAnda dapat membuatnya sendiri:ln -s /Applications/Docker.app/Contents/Resources/bin /usr/local/bin/docker
chiborg
8
Tidak perlu membuat tautan simbolis ke biner buruh pelabuhan secara manual. Menjalankan aplikasi Docker untuk pertama kali membuat tautan simbolik ini. Lihat jawaban saya di stackoverflow.com/a/43365425/303363 untuk detailnya.
Susam Pal
339

Langkah-langkah berikut berfungsi dengan baik di macOS Sierra 10.12.4. Perhatikan bahwa setelah pembuatan menginstal Docker, dockerperintah (tautan simbolik) tidak tersedia di /usr/local/bin. Menjalankan aplikasi Docker untuk pertama kali membuat tautan simbolis ini. Lihat langkah-langkah terperinci di bawah ini.

  1. Instal Docker.

    brew cask install docker
    
  2. Luncurkan Docker.

    • Tekan + Spaceuntuk membuka Pencarian Spotlight dan masuk Dockeruntuk meluncurkan Docker.
    • Di Docker perlu kotak dialog akses istimewa , klik OK .
    • Masukkan kata sandi dan klik OK .

    Ketika Docker diluncurkan dengan cara ini, ikon paus Docker muncul di menu status. Begitu ikon muncul paus, link simbolik untuk docker, docker-compose, docker-credential-osxkeychaindan docker-machinediciptakan dalam /usr/local/bin.

    $ ls -l /usr/local/bin/docker*
    lrwxr-xr-x  1 susam  domain Users  67 Apr 12 14:14 /usr/local/bin/docker -> /Users/susam/Library/Group Containers/group.com.docker/bin/docker
    lrwxr-xr-x  1 susam  domain Users  75 Apr 12 14:14 /usr/local/bin/docker-compose -> /Users/susam/Library/Group Containers/group.com.docker/bin/docker-compose
    lrwxr-xr-x  1 susam  domain Users  90 Apr 12 14:14 /usr/local/bin/docker-credential-osxkeychain -> /Users/susam/Library/Group Containers/group.com.docker/bin/docker-credential-osxkeychain
    lrwxr-xr-x  1 susam  domain Users  75 Apr 12 14:14 /usr/local/bin/docker-machine -> /Users/susam/Library/Group Containers/group.com.docker/bin/docker-machine
    
  3. Klik pada ikon paus buruh pelabuhan di menu status dan tunggu sampai menunjukkan bahwa Docker sedang berjalan .

    masukkan deskripsi gambar di sini masukkan deskripsi gambar di sini

  4. Uji bahwa buruh pelabuhan bekerja dengan baik.

    $ docker run hello-world
    Unable to find image 'hello-world:latest' locally
    latest: Pulling from library/hello-world
    78445dd45222: Pull complete
    Digest: sha256:c5515758d4c5e1e838e9cd307f6c6a0d620b5e07e6f927b07d05f6d12a1ac8d7
    Status: Downloaded newer image for hello-world:latest
    
    Hello from Docker!
    This message shows that your installation appears to be working correctly.
    
    To generate this message, Docker took the following steps:
     1. The Docker client contacted the Docker daemon.
     2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
     3. The Docker daemon created a new container from that image which runs the
        executable that produces the output you are currently reading.
     4. The Docker daemon streamed that output to the Docker client, which sent it
        to your terminal.
    
    To try something more ambitious, you can run an Ubuntu container with:
     $ docker run -it ubuntu bash
    
    Share images, automate workflows, and more with a free Docker ID:
     https://cloud.docker.com/
    
    For more examples and ideas, visit:
     https://docs.docker.com/engine/userguide/
    
    $ docker version
    Client:
     Version:      17.03.1-ce
     API version:  1.27
     Go version:   go1.7.5
     Git commit:   c6d412e
     Built:        Tue Mar 28 00:40:02 2017
     OS/Arch:      darwin/amd64
    
    Server:
     Version:      17.03.1-ce
     API version:  1.27 (minimum version 1.12)
     Go version:   go1.7.5
     Git commit:   c6d412e
     Built:        Fri Mar 24 00:00:50 2017
     OS/Arch:      linux/amd64
     Experimental: true
    
  5. Jika Anda akan menggunakan docker-machineuntuk membuat mesin virtual, instal VirtualBox.

    brew cask install virtualbox
    

    Perhatikan bahwa jika VirtualBox tidak diinstal, maka docker-machine gagal dengan kesalahan berikut.

    $ docker-machine create manager
    Running pre-create checks...
    Error with pre-create check: "VBoxManage not found. Make sure VirtualBox is installed and VBoxManage is in the path"
    
Susam Pal
sumber
32
Bagian terbaik dari jawaban ini adalah bahwa penulis memberikan informasi tambahan yang membuat orang yang memiliki OCD untuk komputer mereka (seperti saya) merasa diyakinkan. Terima kasih!
dawnstar
Ini bagus! Sekarang saya hanya terjebak di Pengguna X bukan bagian dari grup buruh pelabuhan. Apa cara saat ini untuk memperbaikinya?
Alper
Saya terjebak di Docker Desktop untuk Mac yang terikat untuk berjalan dengan pengguna yang masuk ke UI Mac OS. Tidak mungkin open /Applications/Docker.appuntuk mulai menggunakan buruh pelabuhan dari jarak jauh. Dan jika Anda keluar, itu berhenti aplikasi dan mesin dan semua wadahnya.
dlamblin
@ david-karlsson tolong pertimbangkan menjadikan ini jawaban yang diterima
Ramon Balthazar
31

Untuk menginstal Docker untuk Mac dengan homebrew:

brew cask install docker

Untuk menginstal penyelesaian baris perintah:

brew install bash-completion
brew install docker-completion
brew install docker-compose-completion
brew install docker-machine-completion
wisbucky
sumber
6
Anda tidak ingin brew install docker- ini tidak sama dengan brew cask install dockerdan menginstal hal yang berbeda @mimoralea
Igor Serebryany
3
Terima kasih untuk informasi selanjutnya:brew cask install docker && brew install bash-completion docker-completion docker-compose-completion docker-machine-completion
mimoralea
Jangan gunakan mesin buruh pelabuhan - ini akan memberi Anda banyak sakit kepala dengan penerusan jaringan
Vlad
1
@mimoralea Saya sarankan Anda menghapus komentar pertama Anda, jadi semua orang melihat komentar kedua Anda :-)
Duncan Jones
2
@ IgorSerebryany mengapa mereka berbeda? apa perbedaan di antara mereka? Saya harapkan daemon buruh pelabuhan ada di sana, dan bekerja cli - apakah bedanya hanya satu (tong) yang memiliki kitematik juga?
linuxbandit