Description
Updated docker today and then ran a docksal update.
Docker version 17.06.0-ce, build 02c1d87
After running fin project create, site setup fails with a message:
ERROR: test_cli_1 heathcheck failed
Container did not enter a healthy state within the expected amount of time.
Try fin restart
Steps to reproduce the issue:
fin project createDescribe the results you received:
No matter what type of site I setup, I always get this message:
ERROR: test_cli_1 heathcheck failed
Container did not enter a healthy state within the expected amount of time.
Try fin restart
So I try fin restart:
Stopping services...
Stopping test_web_1 ... done
Stopping test_db_1 ... done
Stopping test_cli_1 ... done
Starting services...
Starting test_db_1 ...
Starting test_db_1
Starting test_cli_1 ...
Starting test_cli_1 ... done
Starting test_web_1 ...
Starting test_web_1 ... done
Waiting for test_cli_1 to become ready...
The site still does not come up at test.docksal
I've tried fin up, fin start, fin restart, and fin reset, and all behavior with those commands seems normal. So maybe this is an apache issue or some kind of routing issue with the URL?
Describe the results you expected:
Any site should come up at the provided URL for the project. But no matter what project I create, they aren't coming up and I consistently get this healthcheck error
Output of fin config:
fin config output
---------------------
COMPOSE_PROJECT_NAME_SAFE: test
COMPOSE_FILE:
/Users/jasonglisson/.docksal/stacks/volumes-bind.yml
/Users/jasonglisson/.docksal/stacks/stack-default.yml
ENV_FILE:
/Users/jasonglisson/Sites/test/.docksal/docksal.env
PROJECT_ROOT: /Users/jasonglisson/Sites/test
DOCROOT: docroot
VIRTUAL_HOST: test.docksal
VIRTUAL_HOST_ALIASES: *.test.docksal
IP: 192.168.64.100
MYSQL: 192.168.64.100:32779
Docker Compose configuration
---------------------
services:
cli:
dns:
- 192.168.64.100
- 8.8.8.8
environment:
HOST_GID: '20'
HOST_UID: '501'
XDEBUG_ENABLED: '0'
hostname: cli
image: docksal/cli:1.3-php7
volumes:
- docksal_ssh_agent:/.ssh-agent:ro
- project_root:/var/www:rw,nocopy
db:
dns:
- 192.168.64.100
- 8.8.8.8
environment:
MYSQL_DATABASE: default
MYSQL_PASSWORD: user
MYSQL_ROOT_PASSWORD: root
MYSQL_USER: user
hostname: db
image: docksal/db:1.1-mysql-5.6
ports:
- 03306/tcp
volumes:
- project_root:/var/www:ro,nocopy
web:
depends_on:
cli:
condition: service_started
dns:
- 192.168.64.100
- 8.8.8.8
environment:
APACHE_BASIC_AUTH_PASS: null
APACHE_BASIC_AUTH_USER: null
APACHE_DOCUMENTROOT: /var/www/docroot
hostname: web
image: docksal/web:2.0-apache2.4
labels:
io.docksal.project-root: /Users/jasonglisson/Sites/test
io.docksal.virtual-host: test.docksal,*.test.docksal
volumes:
- project_root:/var/www:ro,nocopy
version: '2.1'
volumes:
docksal_ssh_agent:
external: true
project_root:
driver: local
driver_opts:
device: /Users/jasonglisson/Sites/test
o: bind
type: none
---------------------
Output of fin sysinfo:
fin sysinfo output
```
βββ OS & BASICS
Darwin Jasons-MacBook-Air-2.local 16.6.0 Darwin Kernel Version 16.6.0: Fri Apr 14 16:21:16 PDT 2017; root:xnu-3789.60.24~6/RELEASE_X86_64 x86_64
Mac OS X 10.12.5
fin version: 1.22.0
Mode: Native / Docker for Mac/Windows
βββ INSTANCES
NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS
default - virtualbox Saved Unknown
docksal - virtualbox Stopped Unknown
βββ DOCKER
DOCKER_HOST:
Docker: Client:
Version: 17.06.0-ce
API version: 1.30
Go version: go1.8.3
Git commit: 02c1d87
Built: Fri Jun 23 21:31:53 2017
OS/Arch: darwin/amd64
Server:
Version: 17.06.0-ce
API version: 1.30 (minimum version 1.12)
Go version: go1.8.3
Git commit: 02c1d87
Built: Fri Jun 23 21:51:55 2017
OS/Arch: linux/amd64
Experimental: true
βββ DOCKER COMPOSE
Docker Compose: docker-compose version 1.14.0, build c7bdf9e
docker-py version: 2.3.0
CPython version: 2.7.12
OpenSSL version: OpenSSL 1.0.2j 26 Sep 2016
βββ DOCKER MACHINE
docker-machine version 0.12.0, build 45c69ad
βββ DOCKER: IMAGES
REPOSITORY TAG IMAGE ID CREATED SIZE
docksal/web 2.0-apache2.4 7f75db9a6aa7 2 days ago 87.5MB
docksal/vhost-proxy 1.1 898fb21e7f2d 7 days ago 158MB
docksal/cli 1.3-php7 1442dc481915 13 days ago 752MB
docksal/cli 1.3-php5 77f9a2e141fa 13 days ago 808MB
docksal/db 1.1-mysql-5.6 6feb79af9597 2 weeks ago 298MB
docksal/cli 1.2-php5 11f47dc7d024 4 months ago 845MB
docksal/cli 1.2-php7 aef362412c9f 4 months ago 787MB
docksal/vhost-proxy 1.0 2c8a8b1e62c4 5 months ago 164MB
docksal/dns 1.0 20c7a535479d 6 months ago 61.6MB
docksal/ssh-agent 1.0 148220cc033d 6 months ago 12.2MB
docksal/web 1.0-apache2.2 a9c03f8a5f0f 6 months ago 188MB
docksal/web 1.0-apache2.4 1e2aa01c55d6 6 months ago 259MB
docksal/db 1.0-mysql-5.6 7c932a2f6a71 6 months ago 328MB
docksal/db 1.0-mysql-5.5 9fb8c0aed5fc 6 months ago 255MB
βββ DOCKER: CONTAINERS
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
536809e7e936 docksal/vhost-proxy:1.1 "docker-entrypoint..." 5 minutes ago Up 5 minutes 0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp docksal-vhost-proxy
2ccb7bdbe768 docksal/web:2.0-apache2.4 "httpd-foreground" 24 minutes ago Up 24 minutes 80/tcp, 443/tcp drupaltest_web_1
d43945623bec docksal/db:1.1-mysql-5.6 "/entrypoint.sh my..." 24 minutes ago Up 24 minutes 0.0.0.0:32777->3306/tcp drupaltest_db_1
cde85966947a docksal/cli:1.3-php5 "/opt/startup.sh s..." 24 minutes ago Up 24 minutes (healthy) 22/tcp, 9000/tcp drupaltest_cli_1
847bf0a98671 docksal/web:2.0-apache2.4 "httpd-foreground" 33 minutes ago Up 33 minutes 80/tcp, 443/tcp wptest_web_1
3704271e81a3 docksal/db:1.1-mysql-5.6 "/entrypoint.sh my..." 33 minutes ago Up 33 minutes 0.0.0.0:32776->3306/tcp wptest_db_1
bcd428b71cfe docksal/cli:1.3-php7 "/opt/startup.sh s..." 33 minutes ago Up 33 minutes (healthy) 22/tcp, 9000/tcp wptest_cli_1
099eb59d6433 docksal/web:2.0-apache2.4 "httpd-foreground" 42 minutes ago Up 3 minutes 80/tcp, 443/tcp test_web_1
bb0c465674ee docksal/web:2.0-apache2.4 "httpd-foreground" 42 minutes ago Up 42 minutes 80/tcp, 443/tcp test2_web_1
41dd2186ef8b docksal/db:1.1-mysql-5.6 "/entrypoint.sh my..." 42 minutes ago Up 42 minutes 0.0.0.0:32773->3306/tcp test2_db_1
74423174dad5 docksal/db:1.1-mysql-5.6 "/entrypoint.sh my..." 42 minutes ago Up 3 minutes 0.0.0.0:32779->3306/tcp test_db_1
f67deff2f51a docksal/cli:1.3-php7 "/opt/startup.sh s..." 42 minutes ago Up 42 minutes (healthy) 22/tcp, 9000/tcp test2_cli_1
307262a96b3a docksal/cli:1.3-php7 "/opt/startup.sh s..." 42 minutes ago Up 3 minutes (healthy) 22/tcp, 9000/tcp test_cli_1
1eaec9200b57 docksal/web:1.0-apache2.2 "/opt/startup.sh a..." About an hour ago Up 4 minutes 80/tcp, 443/tcp kstreet_web_1
023b977bac45 docksal/db:1.0-mysql-5.5 "/entrypoint.sh my..." About an hour ago Up 4 minutes 0.0.0.0:32778->3306/tcp kstreet_db_1
7affcca3cb35 docksal/cli:1.2-php7 "/opt/startup.sh s..." About an hour ago Up 4 minutes 22/tcp, 9000/tcp kstreet_cli_1
9e13242d5368 docksal/web:1.0-apache2.2 "/opt/startup.sh a..." About an hour ago Up About an hour 80/tcp, 443/tcp pasintl_web_1
8bbbaea3ca78 docksal/cli:1.2-php5 "/opt/startup.sh s..." About an hour ago Up About an hour 22/tcp, 9000/tcp pasintl_cli_1
6cb2598b1b6f docksal/db:1.0-mysql-5.5 "/entrypoint.sh my..." About an hour ago Up About an hour 0.0.0.0:32769->3306/tcp pasintl_db_1
3acccffd8189 docksal/ssh-agent:1.0 "/run.sh ssh-agent" 13 days ago Up About an hour docksal-ssh-agent
βββ VIRTUALBOX
5.1.22r115126
βββ NETWORK INTERFACES
Name: vboxnet0
GUID: 786f6276-656e-4074-8000-0a0027000000
DHCP: Disabled
IPAddress: 192.168.88.1
NetworkMask: 255.255.255.0
IPV6Address:
IPV6NetworkMaskPrefixLength: 0
HardwareAddress: 0a:00:27:00:00:00
MediumType: Ethernet
Status: Down
VBoxNetworkName: HostInterfaceNetworking-vboxnet0
Name: vboxnet1
GUID: 786f6276-656e-4174-8000-0a0027000001
DHCP: Disabled
IPAddress: 192.168.64.1
NetworkMask: 255.255.255.0
IPV6Address:
IPV6NetworkMaskPrefixLength: 0
HardwareAddress: 0a:00:27:00:00:01
MediumType: Ethernet
Status: Down
VBoxNetworkName: HostInterfaceNetworking-vboxnet1
Name: vboxnet2
GUID: 786f6276-656e-4274-8000-0a0027000002
DHCP: Disabled
IPAddress: 192.168.99.1
NetworkMask: 255.255.255.0
IPV6Address:
IPV6NetworkMaskPrefixLength: 0
HardwareAddress: 0a:00:27:00:00:02
MediumType: Ethernet
Status: Down
VBoxNetworkName: HostInterfaceNetworking-vboxnet2
βββ NFS EXPORTS
```
I have not been able to reproduce this with Docker for Mac (like you have here). This is what I get:
...
Creating test_db_1 ...
Creating test_cli_1 ...
Creating test_db_1
Creating test_cli_1 ... done
Creating test_db_1 ... done
Creating test_web_1 ... done
Waiting for test_cli_1 to become ready...
Waiting for test_cli_1 to become ready...
Connected vhost-proxy to "test_default" network.
Waiting 10s for MySQL to initialize...
Step 3 Installing site...
You are about to DROP all tables in your 'default' database. Do you want to continue? (y/n): y
Starting Drupal installation. This takes a while. Consider using the --notify global option. [ok]
Installation complete. User name: admin User password: WnpMyFuNtL [ok]
Congratulations, you installed Drupal! [status]
real 0m51.176s
user 0m0.414s
sys 0m0.173s
DONE! Open http://test.docksal in your browser to verify the setup.
I'm testing with the same version of fin (1.22.0) and the same image versions (docksal/cli 1.3-php7 1442dc481915 for cli specifically)
According to the fin sysinfo output you do have a bunch of projects started and their cli containers are showing up as healthy.
bcd428b71cfe docksal/cli:1.3-php7 "/opt/startup.sh s..." 33 minutes ago Up 33 minutes (healthy) 22/tcp, 9000/tcp wptest_cli_1
cde85966947a docksal/cli:1.3-php5 "/opt/startup.sh s..." 24 minutes ago Up 24 minutes (healthy) 22/tcp, 9000/tcp drupaltest_cli_1
f67deff2f51a docksal/cli:1.3-php7 "/opt/startup.sh s..." 42 minutes ago Up 42 minutes (healthy) 22/tcp, 9000/tcp test2_cli_1
307262a96b3a docksal/cli:1.3-php7 "/opt/startup.sh s..." 42 minutes ago Up 3 minutes (healthy) 22/tcp, 9000/tcp test_cli_1
Please post the full output from fin reset or fin project create. You may be hitting the wait limit on the cli containers to enter the healthy state.
Also, I noticed docksal/dns service is not running. Without that one http://test.docksal will not resolve properly and won't open in a browser. Do a fin reset system to this this (post the output here as well).
Thanks for checking into this.
fin reset
Jasons-MacBook-Air-2:test jasonglisson$ fin reset
WARNING: All containers and volumes for the current project will be removed!
Continue? [y/n]: y
Removing containers...
Stopping test_web_1 ... done
Stopping test_db_1 ... done
Stopping test_cli_1 ... done
Removing test_web_1 ... done
Removing test_db_1 ... done
Removing test_cli_1 ... done
Removing network test_default
Removing volume test_project_root
Volume docksal_ssh_agent is external, skipping
Starting services...
Creating network "test_default" with the default driver
Creating volume "test_project_root" with local driver
Creating test_db_1 ...
Creating test_cli_1 ...
Creating test_cli_1
Creating test_cli_1 ... done
Creating test_web_1 ...
Creating test_web_1 ... done
Waiting for test_cli_1 to become ready...
Waiting for test_cli_1 to become ready...
Waiting for test_cli_1 to become ready...
Waiting for test_cli_1 to become ready...
Waiting for test_cli_1 to become ready...
Waiting for test_cli_1 to become ready...
Waiting for test_cli_1 to become ready...
ERROR: test_cli_1 heathcheck failed
Container did not enter a healthy state within the expected amount of time.
Try fin restart
Looks like fin reset system did the trick. I have no idea why though. I've been using docksal all day and just updated docker and docksal and everything broke it seems like. I'd love to know your thoughts on why maybe.
Thanks so much for your hard work on maintaining this fantastic tool.
Are you saying that after fin reset system and then fin reset inside of the project you are no longer getting the test_cli_1 heathcheck failed error?
Do you happen to still have the console logs from fin update?
Those will drop some light on why docksal/dns was not running.
Only after running fin reset system did it start working again. fin reset consistently failed prior to running fin reset system.
I have no idea why docksal/dns wasn't running. Unfortunately I don't have the logs from fin update. I wish I had saved it, but I didn't think it wasn't going to be a problem. Very odd that the dns never came back up though. Let me know if I can provide
It actually just happened again. I wasn't doing anything. Just working on some code and my site stopped coming up in the browser. Is there a limit on the amount of projects you can have running? I'm wondering if there is something going on with the dns.
If the VM starts running out of RAM, then weird things start to happen.
It is possible, that docksal/dns crashes when the VM runs out of memory.
Check the logs with fin docker logs docksal-dns and post here.
You can usually safely have about 2 LAMP stacks per 1GB of RAM.
To check (and set) how much RAM the VM has allocated use fin vm ram.
To free up RAM - stop inactive projects one by one (fin stop inside the project) or stop all with fin stop --all.
Thanks for the reply.
fin docker logs docksal-dns output
Generating configuration in /etc/dnsmasq.d/docksal.conf
address=/docksal/192.168.64.100
ptr-record=100.64.168.192.in-addr.arpa,docksal
Generating configuration in /etc/dnsmasq.d/local.conf
address=/local/127.0.0.1
ptr-record=1.0.0.127.in-addr.arpa,local
/usr/lib/python2.7/site-packages/supervisor/options.py:296: UserWarning: Supervisord is running as root and it is searching for its configuration file in default locations (including its current working directory); you probably want to specify a "-c" argument specifying an absolute path to a configuration file for improved security.
'Supervisord is running as root and it is searching '
2017-08-10 00:48:46,087 CRIT Supervisor running as root (no user in config file)
2017-08-10 00:48:46,088 WARN Included extra file "/etc/supervisor.d/docker-gen.ini" during parsing
2017-08-10 00:48:46,101 INFO RPC interface 'supervisor' initialized
2017-08-10 00:48:46,102 CRIT Server 'unix_http_server' running without any HTTP authentication checking
2017-08-10 00:48:46,103 INFO supervisord started with pid 1
2017-08-10 00:48:47,107 INFO spawned: 'dnsmasq' with pid 18
2017-08-10 00:48:47,119 INFO spawned: 'docker-gen' with pid 19
dnsmasq: started, version 2.76 cachesize 150
dnsmasq: compile time options: IPv6 GNU-getopt no-DBus no-i18n no-IDN DHCP DHCPv6 no-Lua TFTP no-conntrack ipset auth no-DNSSEC loop-detect inotify
dnsmasq: reading /etc/resolv.conf
dnsmasq: using nameserver 8.8.8.8#53
dnsmasq: read /etc/hosts - 7 addresses
2017/08/10 00:48:47 Contents of /etc/dnsmasq.d/dockergen.conf did not change. Skipping notification 'supervisorctl restart dnsmasq'
2017/08/10 00:48:47 Watching docker events
2017/08/10 00:48:48 Contents of /etc/dnsmasq.d/dockergen.conf did not change. Skipping notification 'supervisorctl restart dnsmasq'
2017-08-10 00:48:48,157 INFO success: dnsmasq entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2017-08-10 00:48:48,158 INFO success: docker-gen entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2017/08/10 01:00:48 Received event die for container 8723e48bcce2
2017/08/10 01:00:49 Contents of /etc/dnsmasq.d/dockergen.conf did not change. Skipping notification 'supervisorctl restart dnsmasq'
2017/08/10 01:14:59 Received event start for container 8723e48bcce2
2017/08/10 01:15:00 Contents of /etc/dnsmasq.d/dockergen.conf did not change. Skipping notification 'supervisorctl restart dnsmasq'
I guess it's most likely that you run out of memory. fin vm ram 2048 should solve your issues.
I guess it's most likely that you run out of memory. fin vm ram 2048 should solve your issues.
yeah, except that fin vm does not apply to Docker for Mac. Also, Docker for Mac uses 2GB RAM out of the box.
@jasonglisson does stopping projects with fin stop --all help in your case?
Yes that did help. I've had to do it a few times and I've only had one other project running. So it seems that I'm not able to run more than one project at a time right now. I'm using a macbook Air with 8 GB or memory, but I think other tools are gobbling up my resources.
Looks like Boot2Docker (VirtualBox) and Docker for Mac (xhyve) are managing RAM differently.
VirtualBox reserves the RAM at the VM start, so you get the RAM you allow the VM to use.
xhyve does not reserve the RAM right away and instead "shares" the RAM with the host up to the limit set in settings. So you may end up in a situation like this, when the host is running out of RAM and thus the VM suffers from that as well.
Closing for now as there is nothing else that can be done here at the moment. We will cover this case in a blog post.
Hey guys. This is an issue again for me.
I'm getting the same issue as I originally posted. Except now, when I do fin up ram 2048 or fin stop --all, I can't get anything to come back online even though it looks like it's good to go in my terminal.
I just ran a docker update and also updated docksal. After that, nothing works.
Any thoughts? Should I repost my sysinfo?
Actually, after running fin reset system, it's running again. So it seems that the DNS isn't resolving or starting. Might not be reason to reopen this, but I thought I would mention it.
Nevermind. I created one project and that worked fine. So I removed it and created a second project after I did a fin reset system, and it failed again. It's pretty sporadic it seems. Always failing after "waiting for XXX_cli_1 to become ready..."
@jasonglisson please post the output from fin config and fin sysinfo again.
fin sysinfo
Jasons-MacBook-Air-2:Sites jasonglisson$ fin sysinfo
βββ OS & BASICS
Darwin Jasons-MacBook-Air-2.local 16.6.0 Darwin Kernel Version 16.6.0: Fri Apr 14 16:21:16 PDT 2017; root:xnu-3789.60.24~6/RELEASE_X86_64 x86_64
Mac OS X 10.12.5
fin version: 1.27.0
Mode: Native / Docker for Mac/Windows
βββ INSTANCES
NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS
default - virtualbox Error Unknown /usr/local/bin/VBoxManage showvminfo default --machinereadable failed:
VBoxManage: error: Failed to create the VirtualBox object!
VBoxManage: error: Code NS_ERROR_SOCKET_FAIL (0xC1F30200) - IPC daemon socket error (extended info not available)
VBoxManage: error: Most likely, the VirtualBox COM server is not running or failed to start.
docksal - virtualbox Error Unknown /usr/local/bin/VBoxManage showvminfo docksal --machinereadable failed:
VBoxManage: error: Failed to create the VirtualBox object!
VBoxManage: error: Code NS_ERROR_SOCKET_FAIL (0xC1F30200) - IPC daemon socket error (extended info not available)
VBoxManage: error: Most likely, the VirtualBox COM server is not running or failed to start.
βββ DOCKER
DOCKER_HOST:
Docker: Client:
Version: 17.06.0-ce
API version: 1.30
Go version: go1.8.3
Git commit: 02c1d87
Built: Fri Jun 23 21:31:53 2017
OS/Arch: darwin/amd64
Server:
Version: 17.06.0-ce
API version: 1.30 (minimum version 1.12)
Go version: go1.8.3
Git commit: 02c1d87
Built: Fri Jun 23 21:51:55 2017
OS/Arch: linux/amd64
Experimental: true
βββ DOCKER COMPOSE
Docker Compose: docker-compose version 1.14.0, build c7bdf9e
docker-py version: 2.3.0
CPython version: 2.7.12
OpenSSL version: OpenSSL 1.0.2j 26 Sep 2016
βββ DOCKER MACHINE
docker-machine version 0.12.2, build 9371605
βββ DOCKER: IMAGES
REPOSITORY TAG IMAGE ID CREATED SIZE
docksal/web 2.1-apache2.4 32c1d32eba6d 3 weeks ago 87.5MB
docksal/web 2.0-apache2.4 7f75db9a6aa7 5 weeks ago 87.5MB
docksal/vhost-proxy 1.1 898fb21e7f2d 6 weeks ago 158MB
docksal/cli 1.3-php7 1442dc481915 7 weeks ago 752MB
docksal/cli 1.3-php5 77f9a2e141fa 7 weeks ago 808MB
docksal/db 1.1-mysql-5.6 6feb79af9597 8 weeks ago 298MB
docksal/cli 1.2-php5 11f47dc7d024 5 months ago 845MB
docksal/cli 1.2-php7 aef362412c9f 5 months ago 787MB
docksal/vhost-proxy 1.0 2c8a8b1e62c4 6 months ago 164MB
docksal/dns 1.0 20c7a535479d 7 months ago 61.6MB
docksal/ssh-agent 1.0 148220cc033d 7 months ago 12.2MB
docksal/web 1.0-apache2.2 a9c03f8a5f0f 8 months ago 188MB
docksal/web 1.0-apache2.4 1e2aa01c55d6 8 months ago 259MB
docksal/db 1.0-mysql-5.6 7c932a2f6a71 8 months ago 328MB
docksal/db 1.0-mysql-5.5 9fb8c0aed5fc 8 months ago 255MB
βββ DOCKER: CONTAINERS
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c91a23808ee3 docksal/web:2.1-apache2.4 "httpd-foreground" 5 minutes ago Up 5 minutes 80/tcp, 443/tcp homeplannerpanel_web_1
009cf68bdefc docksal/cli:1.3-php5 "/opt/startup.sh s..." 5 minutes ago Up 5 minutes (healthy) 22/tcp, 9000/tcp homeplannerpanel_cli_1
8d276cea9c0f docksal/db:1.1-mysql-5.6 "/entrypoint.sh my..." 5 minutes ago Up 5 minutes 0.0.0.0:32770->3306/tcp homeplannerpanel_db_1
d36411064f89 docksal/ssh-agent:1.0 "/run.sh ssh-agent" 44 hours ago Up 44 hours docksal-ssh-agent
0e29b5c2dada docksal/dns:1.0 "/opt/entrypoint.s..." 44 hours ago Up 44 hours 192.168.64.100:53->53/udp docksal-dns
ce26bd649afa docksal/vhost-proxy:1.1 "docker-entrypoint..." 44 hours ago Up 44 hours 192.168.64.100:80->80/tcp, 192.168.64.100:443->443/tcp docksal-vhost-proxy
f164264b59b8 docksal/web:2.1-apache2.4 "httpd-foreground" 44 hours ago Up 44 hours 80/tcp, 443/tcp pas2017_web_1
0e074e8db383 docksal/cli:1.3-php5 "/opt/startup.sh s..." 44 hours ago Up 44 hours (healthy) 22/tcp, 9000/tcp pas2017_cli_1
17e040e6bf16 docksal/db:1.1-mysql-5.6 "/entrypoint.sh my..." 44 hours ago Up 44 hours 0.0.0.0:32768->3306/tcp pas2017_db_1
e2799d8a0c40 docksal/web:1.0-apache2.2 "/opt/startup.sh a..." 2 months ago Up 41 hours 80/tcp, 443/tcp gwp_web_1
6737274105a5 docksal/cli:1.2-php7 "/opt/startup.sh s..." 2 months ago Up 41 hours 22/tcp, 9000/tcp gwp_cli_1
99d74de118d5 docksal/db:1.0-mysql-5.5 "/entrypoint.sh my..." 2 months ago Up 41 hours 0.0.0.0:32769->3306/tcp gwp_db_1
βββ VIRTUALBOX
5.1.22r115126
βββ NETWORK INTERFACES
Name: vboxnet0
GUID: 786f6276-656e-4074-8000-0a0027000000
DHCP: Disabled
IPAddress: 192.168.88.1
NetworkMask: 255.255.255.0
IPV6Address:
IPV6NetworkMaskPrefixLength: 0
HardwareAddress: 0a:00:27:00:00:00
MediumType: Ethernet
Status: Down
VBoxNetworkName: HostInterfaceNetworking-vboxnet0
Name: vboxnet1
GUID: 786f6276-656e-4174-8000-0a0027000001
DHCP: Disabled
IPAddress: 192.168.64.1
NetworkMask: 255.255.255.0
IPV6Address:
IPV6NetworkMaskPrefixLength: 0
HardwareAddress: 0a:00:27:00:00:01
MediumType: Ethernet
Status: Down
VBoxNetworkName: HostInterfaceNetworking-vboxnet1
Name: vboxnet2
GUID: 786f6276-656e-4274-8000-0a0027000002
DHCP: Disabled
IPAddress: 192.168.99.1
NetworkMask: 255.255.255.0
IPV6Address:
IPV6NetworkMaskPrefixLength: 0
HardwareAddress: 0a:00:27:00:00:02
MediumType: Ethernet
Status: Down
VBoxNetworkName: HostInterfaceNetworking-vboxnet2
βββ NFS EXPORTS
# VAGRANT-BEGIN: 501 9853e966-f059-41c4-9b2e-6ee3db86c632
#"/Users/jasonglisson/Sites/drupal-vm" 192.168.88.88 -alldirs -mapall=501:20
# VAGRANT-END: 501 9853e966-f059-41c4-9b2e-6ee3db86c632
fin config
Jasons-MacBook-Air-2:Sites jasonglisson$ fin config
/usr/local/bin/fin: fork: Resource temporarily unavailable
/usr/local/bin/fin: fork: Resource temporarily unavailable
/usr/local/bin/fin: fork: Resource temporarily unavailable
/usr/local/bin/fin: fork: Resource temporarily unavailable
/usr/local/bin/fin: fork: Resource temporarily unavailable
usage: basename string [suffix]
basename [-a] [-s suffix] string [...]
/usr/local/bin/fin: fork: Resource temporarily unavailable
/usr/local/bin/fin: fork: Resource temporarily unavailable
---------------------
COMPOSE_PROJECT_NAME_SAFE:
COMPOSE_FILE:
/Users/jasonglisson/.docksal/stacks/volumes-bind.yml
/Users/jasonglisson/.docksal/stacks/stack-default.yml
PROJECT_ROOT: /Users/jasonglisson/Sites
DOCROOT: docroot
VIRTUAL_HOST: .docksal
VIRTUAL_HOST_ALIASES: *..docksal
IP: 192.168.64.100
MYSQL:
Docker Compose configuration
---------------------
services:
cli:
dns:
- 192.168.64.100
- 8.8.8.8
environment:
DOCROOT: docroot
HOST_GID: '20'
HOST_UID: '501'
XDEBUG_ENABLED: '0'
hostname: cli
image: docksal/cli:1.3-php7
volumes:
- docksal_ssh_agent:/.ssh-agent:ro
- project_root:/var/www:rw,nocopy
db:
dns:
- 192.168.64.100
- 8.8.8.8
environment:
MYSQL_DATABASE: default
MYSQL_PASSWORD: user
MYSQL_ROOT_PASSWORD: root
MYSQL_USER: user
hostname: db
image: docksal/db:1.1-mysql-5.6
ports:
- 3306/tcp
volumes:
- project_root:/var/www:ro,nocopy
web:
depends_on:
cli:
condition: service_started
dns:
- 192.168.64.100
- 8.8.8.8
environment:
APACHE_BASIC_AUTH_PASS: null
APACHE_BASIC_AUTH_USER: null
APACHE_DOCUMENTROOT: /var/www/docroot
hostname: web
image: docksal/web:2.1-apache2.4
labels:
io.docksal.project-root: /Users/jasonglisson/Sites
io.docksal.virtual-host: .docksal,*..docksal
volumes:
- project_root:/var/www:ro,nocopy
version: '2.1'
volumes:
docksal_ssh_agent:
external: true
project_root:
driver: local
driver_opts:
device: /Users/jasonglisson/Sites
o: bind
type: none
---------------------
No matter what I do, I keep getting this..
Starting services...
Creating homeplannerpanel_cli_1 ...
Creating homeplannerpanel_db_1 ...
Creating homeplannerpanel_db_1
Creating homeplannerpanel_cli_1 ... done
Creating homeplannerpanel_db_1 ... done
Creating homeplannerpanel_web_1 ... done
Waiting for homeplannerpanel_cli_1 to become ready...
Waiting for homeplannerpanel_cli_1 to become ready...
Waiting for homeplannerpanel_cli_1 to become ready...
Waiting for homeplannerpanel_cli_1 to become ready...
Waiting for homeplannerpanel_cli_1 to become ready...
Waiting for homeplannerpanel_cli_1 to become ready...
Waiting for homeplannerpanel_cli_1 to become ready...
@jasonglisson also fin docker info
I am having this issue and in the docker container logs for the cli I can see that it gets stuck doing this and it takes too long and so that error occurs:
Resetting permissions on /home/docker and /var/www...
However, the cli is working just fine once it finishes. Is there a way to increase that timeout or add a flag to ignore it? It probably has something to do with how many files are in the project perhaps and how long it takes to change permissions on all of them?
Timeout has actually been increased in the latest release... Could you post fin config for the project where it happens once again?
And could you run fin docker pull docksal/cli:1.3-php7 just in case?
These projects are Drupal 7 and run on PHP 5.6 so docksal/cli:1.3-php5.
Ok run fin docker pull docksal/cli:1.3-php5. Should not matter.
And I would still need the latest fin config
Isn't this a dupe of #325 (which was addressed in 1.6.0)?
@drubage My projects were also Drupal 7 and Drupal 8. However, I have not had this issue since upgrading to the most recent version. Prior to this, I had to do a fin reset to get it to work, and sometimes it still didn't work. So I did fin restart then it seemed to work. But again, I haven't had this issue since the new release.
@lmakarov not specifically a dupe since in #325 it was Linux but the nature is definitely the same and /home/docker volume introduced in the latest release should have fixed this.
Spare-Mac-Book-Pro:golfzing drew.michael$ fin docker pull docksal/cli:1.3-php5
1.3-php5: Pulling from docksal/cli
Digest: sha256:467b9dd59c4fdb71c5d353d3d52a4d1342b4f4164b50fb459257d97353ef342e
Status: Image is up to date for docksal/cli:1.3-php5
fin config:
---------------------
COMPOSE_PROJECT_NAME_SAFE: golfzing
COMPOSE_FILE:
/Users/drew.michael/.docksal/stacks/overrides-osxfs.yml
/Users/drew.michael/.docksal/stacks/volumes-bind.yml
/Users/drew.michael/projects/golfzing/.docksal/docksal.yml
ENV_FILE:
/Users/drew.michael/projects/golfzing/.docksal/docksal.env
PROJECT_ROOT: /Users/drew.michael/projects/golfzing
DOCROOT: docroot
VIRTUAL_HOST: golfzing.docksal
VIRTUAL_HOST_ALIASES: *.golfzing.docksal
IP: 192.168.64.100
MYSQL:
Docker Compose configuration
---------------------
services:
backstop:
entrypoint: top -b
hostname: backstop
image: docksal/backstopjs
volumes:
- /Users/drew.michael/projects/golfzing/tests/backstop:/src:rw
blackfire:
environment:
BLACKFIRE_SERVER_ID: ee03735e-4a15-4b5f-ba76-5d0bc7160dc8
BLACKFIRE_SERVER_TOKEN: 982bdea3e43186a258b699944ef00deb7ad4a3c4b61c54cef99d581e4fd3499e
image: blackfire/blackfire
browser:
hostname: browser
image: selenium/standalone-chrome
cli:
dns:
- 192.168.64.100
- 8.8.8.8
environment:
XDEBUG_ENABLED: '0'
hostname: cli
image: docksal/cli:1.3-php5
volumes:
- docksal_ssh_agent:/.ssh-agent:ro
- project_root:/var/www:rw
db:
dns:
- 192.168.64.100
- 8.8.8.8
environment:
MYSQL_DATABASE: default
MYSQL_PASSWORD: user
MYSQL_ROOT_PASSWORD: root
MYSQL_USER: user
hostname: db
image: docksal/db:1.1-mysql-5.5
ports:
- 3306/tcp
mail:
environment:
MH_API_BIND_ADDR: 0.0.0.0:80
MH_UI_BIND_ADDR: 0.0.0.0:80
expose:
- '80'
hostname: mail
image: mailhog/mailhog
labels:
io.docksal.virtual-host: webmail.golfzing.docksal
user: root
memcached:
environment:
MEMCACHED_MEMORY_LIMIT: '128'
hostname: memcached
image: memcached
web:
depends_on:
cli:
condition: service_started
dns:
- 192.168.64.100
- 8.8.8.8
environment:
APACHE_DOCUMENTROOT: /var/www/docroot
hostname: web
image: docksal/web:2.0-apache2.2
labels:
io.docksal.project-root: /Users/drew.michael/projects/golfzing
io.docksal.virtual-host: golfzing.docksal,*.golfzing.docksal
volumes:
- project_root:/var/www:ro
version: '2.1'
volumes:
docksal_ssh_agent:
external: true
name: docksal_ssh_agent
project_root:
driver: local
driver_opts:
device: /Users/drew.michael/projects/golfzing
o: bind
type: none
---------------------
Here is the output of "fin project restart":
Spare-Mac-Book-Pro:golfzing drew.michael$ fin restart
Identity added: id_rsa (id_rsa)
Stopping services...
Starting services...
Creating network "golfzing_default" with the default driver
Creating volume "golfzing_project_root" with local driver
Creating golfzing_browser_1 ...
Creating golfzing_mail_1 ...
Creating golfzing_cli_1 ...
Creating golfzing_db_1 ...
Creating golfzing_backstop_1 ...
Creating golfzing_memcached_1 ...
Creating golfzing_mail_1
Creating golfzing_cli_1
Creating golfzing_browser_1
Creating golfzing_db_1
Creating golfzing_backstop_1
Creating golfzing_cli_1 ... done
Creating golfzing_web_1 ...
Creating golfzing_web_1 ... done
Waiting for golfzing_cli_1 to become ready...
Waiting for golfzing_cli_1 to become ready...
Waiting for golfzing_cli_1 to become ready...
Waiting for golfzing_cli_1 to become ready...
Waiting for golfzing_cli_1 to become ready...
Waiting for golfzing_cli_1 to become ready...
Waiting for golfzing_cli_1 to become ready...
Waiting for golfzing_cli_1 to become ready...
Waiting for golfzing_cli_1 to become ready...
Waiting for golfzing_cli_1 to become ready...
Waiting for golfzing_cli_1 to become ready...
Waiting for golfzing_cli_1 to become ready...
Waiting for golfzing_cli_1 to become ready...
ERROR: golfzing_cli_1 heathcheck failed
Container did not enter a healthy state within the expected amount of time.
Try fin project restart
I can see in Kitematic that the cli container is doing this:
Resetting permissions on /home/docker and /var/www...
@drubage see here https://github.com/docksal/docksal/issues/325#issuecomment-326374895
When cli starts, we pass and set the UID/GID for the docker user inside cli with the values from the host. We then reset permissions on /home/docker. This operation happens to be very slow with the overlay2 storage driver (used in 17.x Ubuntu versions and Docker for Mac/Win). The solution is to turn /home/docker into an anonymous volume, which makes it a bind mount from the docker host. This way it no longer resides within the overlay2 storage scope of the container file system.
In 1.6.0 we added that volume to the default stacks. Since you are using a custom stack configuration (configuration fully defined in project's docksal.yml), you will have to manually add the /home/docker volume on the cli service.
Ok radical, lemme give it a shot. I think I also see that you added a volume to the db so that my.cnf would work properly so we'll make that update also. We do have custom stack configurations per project and managing updates to all of them can be challenging when changes are made to the default stacks but I totally get it and appreciate the improvements over time!
Ok got it that makes a lot of sense. In that situation I would use the docksal.env file to specify this:
WEB_IMAGE='docksal/web:2.1-apache2.2'
DB_IMAGE='docksal/db:1.1-mysql-5.5'
CLI_IMAGE='docksal/cli:1.3-php5'
and then include any extra containers I want (like mailhog, memcached, etc.) with full configuration in the docksal.yml. That sound right?
Yep. At some point, you may still have to bump the pinned image versions, as the future versions of Docksal may rely on changes inside the images.
I'm closing this issue now. Anyone else experiencing it - make sure you have the most recent versions of Docksal (fin update) and stack configuration (either updated your custom stacks or switch to using the default stack as explained above).
@drubage
include any extra containers I want (like mailhog, memcached, etc.) with full configuration in the docksal.yml
You don't need to have full configuration. I actually recommend against using full configuration for LAMP projects. Better have a stack defined in docksal.env:
DOCKSAL_STACK=default
When it's defined docksal.yml starts functioning as an override to the defined stack. So you just include those additional things you need in docksal.yml.
Provided you have stack defined in docksal.env you don't need to re-define cli, web and db in docksal.yml to just include mailhog. And with stack you will automatically get all the updates to those default containers' default configurations.
Sorry I meant the full configuration FOR THOSE EXTRA CONTAINERS only. I will now remove web, cli and db from docksal.yml completely and only include mailhog's section (for example) in docksal.yml and then in docksal.env set the version of the web, cli and db containers I want for that project. This will alleviate having to keep up with changes to the default stacks although I may need to make other adjustments as the web, cli and db containers upgrade over time. This allows me to more likely not have to make as many system-wide repository changes in the future.
Thanks again!