This project is under the MIT License. Copyright (c) 2020 Eric "John" Simerlink
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- Install Docker
npm run pre-dev
npm run dev
- depending on the speed of your machine this may take 5 minutes
Note: since although node_module
is mounted between the host machine and the guest/docker machine, it is safest to run npm install
in the docker machine because of OS-specific dependencies. Therefore, the way I add a new package is by manually adding the package & version (get the version from npmjs.com if necessary) into the package.json
file and then hitting Ctrl+C
to kill the docker/webpack-dev-server and then typing npm run dev
again to reboot the docker/webpack-dev-server, which will also install the new package in the package.json
file, as the RUN
command in the Dockerfile
includes an npm install
statement. Since the docker machine can detect that other previously installed packages exist in the mounted node_modules
folder, the docker machine will only have to install the new package (but will still take a minute or so to loop through all packages and update any ones that need to be updated). So this whole process is still a bit slow, but not too slow, and it would be better if we could come up with a slightly faster process for adding an npm package.
As of 2018_OCT_14, this setup works on macOS High Sierra 10.13.6 with Docker Version 18.06.0-ce-mac70 (26399)
This project uses the following technologies:
The project is also using WebStorm as the primary development environment.
- If you want to contribute, contact John directly at johnsimerlink at gmail dot com