LaraDock build using GitLab CI build process? stumped on how to implement

Hi All,

I am pretty new to the whole docker / continuous integration stuff as a whole. I will briefly explain what I am trying to accomplish here and see what kind of input you guys can give me.

My hosting is through digital ocean, I had read into the gitlab/digital ocean integration stuff so I decided to jump in head first. It had me create a docker droplet using ubuntu 14.04. I have gone through all the steps to successfully setup my gitlab runner and have it registered and working. The framework that I am using for my site is laravel 5.

Since I am new to Docker, I did a little research and came across a neat packaged deal that sets up a nice clean laravel enviornment in a few simple steps. its called LaraDock

It was a pretty seamless setup and seems to work great, the only problem i have is when it comes to doing my build process. I just really don’t know the best way of going about implementing it. I had it… kind of working? when i setup my config.toml file to have the executor be “shell” instead of “docker”

when it was set to shell I could run through the steps in the laradock documentaion and it “seemed” to work until I got to the step where I want to enter the workspace container via this command

docker exec -it {Workspace-Container-Name} bash

The main issue with this above is that it fails with the following error “cannot enable tty mode on non tty input” and I haven’t really found a way around that to let me get inside the workspace to run my different composer functions/migrations/etc. This is what my .gitlab-ci.yml file looks like and it works except for the last step.

  - docker info

    - git clone
    - cd laradock
    - docker-compose up -d  nginx mysql redis workspace
    - docker exec -it laradock_workspace_1 bash

any suggestions on this would be greatly appreciated.


any direction would be helpful, just not sure exactly the best way to move forward with this.

I’ve got the same Problem (LaraDock + Gitlab CI + Docker + Runner + Digital Ocean).
Would appreciate help.



Hi jdseibe,
I decided to not use the CI feature first and get Laradock up an running and it was pretty easy.
In the laradock-folder ist another folder called “_guides” which contains some useful Information.

Here is the solution for your “Workspace”-Problem:
(Taken from the digitalocean-guid)

Create Your LaraDock Containers

$root@midascode:~/laravel/laradock# docker-compose up -d nginx mysql

Go to Your Workspace

docker-compose exec workspace bash

Install laravel Dependencies, Add .env , generate Key and give proper permission certain folder

$ root@0e77851d27d3:/var/www/laravel# composer install
$ root@0e77851d27d3:/var/www/laravel# cp .env.example .env
$ root@0e77851d27d3:/var/www/laravel# php artisan key:generate
$ root@0e77851d27d3:/var/www/laravel# exit
$root@midascode:~/laravel/laradock# cd ..
$root@midascode:~/laravel# sudo chmod -R 777 storage bootstrap/cache


I even got caddy + Let’s encrypt working pretty easy.

I hope this helped. Will post a CI solution if I get it working.

Cheers, Enaah