Setting up a new project in Docker and VS Code.
Using Terminal, go to your Sites directory and create a new directory using the mkdir command. In this instance I'm going to create a new directory titled ADCE
shortcut command to access the Sites directory
cd ~/Sites
Create the new directory
mkdir ADCE
Go in to the new directory
cd ADCE
Run the devcontainer command
devcontainer
This will require you to respond to prompts. I'll be setting up on PHP 7.4, Drupal 9, MySQL 5.7 and SOLR 8.x:
ADCE devcontainer
prompt: Where should the .devcontainer folder go?: (.)
prompt: What should the docroot be?: (web)
prompt: What do you want the .test domain to be?: (ADCE)
Which version of PHP would you like?
> PHP 7.4
PHP 7.3
PHP 7.2
PHP 7.1
PHP 7.0
Which framework will you be developing in?
> Drupal 9
Drupal 8
Drupal 7
Laravel
Wordpress
Magento 2
None
Which version of MySQL would you like?
> MySQL 5.7
MySQL 8.0
None
Which version of Memcached would you like?
Memcached 1.5
> None
Which version of SOLR would you like?
> SOLR 8.x
SOLR 7.x
SOLR 6.x
SOLR 5.x
SOLR 4.x
None
Which version of NodeJS would you like?
> Latest
Node 13.x
Node 12.x
Node 11.x
Node 10.x
Node 9.x
Config complete:
--------------
Recommended Drupal 8 setup: curl -sL https://icon-drupal-bootstrap.netlify.com/project-setup.sh | bash -
--------------
MySQL inside your app:
MySQL Host: mysql
MySQL Username: root
MySQL Password: root
MySQL from your desktop (Sequel Pro) via SSH tunnel:
SSH Host: 127.0.0.1
SSH Port: 22222
SSH Username: root
SSH Password: root
MySQL Host: ADCE_mysql_1
--------------
SOLR Host: solr
SOLR Port: 8983
To create your core, add your config files to: .devcontainer/solr/local/ACDE
Then log into the SOLR Admin URL and add a core at: local/ACDE
SOLR Admin URL: http://ACDE-solr.test
--------------
Web URL: https://ACDE.test
Docroot: /Users/{yourname}/Sites/ACDE/web
You should run in your project (within the docker):
composer require-dev phpcompatibility/php-compatibility
Project ready to open in vscode with devcontainer.
Open in VS Code
code .
Now you are in VS Code and click open in container:
In the Terminal area in VS Code run
composer create-project drupal-composer/drupal-project:9.x-dev some-dir --no-interaction
This command will set-up Drupal 9 in this directory.
Now set-up the MySQL db. First confirm which MySQL is being used by
which mysql
Response
/usr/bin/mysql
All good, set the MySQL user and password
mysql -u root -proot -h mysql
Create the database, in this instance it will be called ACDE_drupal
create database ACDE_drupal; exit;
Move the content in some-dir, to the previous directory using the mv command. First grab all of the files and directories and move them
mv some-dir/* .
Second, grab all of the hidden files / directories
mv some-dir/.* . (n when prompted for ..)
Now the some-dir directory is empty. So it is time to remove the temporary directory some-dir
rm -rf some-dir
Initialise Git
git init
Ensure proxy running... In Docker
open ACDE.test
Now you will be prompted to set-up a new Drupal 9 installation on your local environment. When you complete the database credentials, use the credentials that were set above:
db: u: root, p: root, db: drupal, host: mysql