by Devin Yang
(This article was automatically translated.)

Published - 7 years ago ( Updated - 7 years ago )

Foreword

When developing Laravel, sometimes we need to install the nodejs package through npm, but Node in our system is not new enough.
It may be impossible to upgrade due to some factors, such as running an old version of nodejs program, etc.
In fact, we can use docker through simple commands, so that we can use the latest version of node image to mount the /sites folder on the host side.
In this way, we can execute the new version of the npm command at any time.

docker command

When we are in the folder of dlaravel, execute the following command:
docker run --rm -v ${PWD}/sites:/sites -w /sites -ti node bash

For example using the LTS version:
docker run --rm -v ${PWD}/sites:/sites -ti node:8.11.4 node npm -v

Let me explain them one by one:
run:    to execute a new container. (Run a command in a new container)
--rm:  Automatically remove the container when it stops.  (Automatically remove the container when it exits)
-v:      Bind mount a volume. (Bind mount a volume)
          This means that the data of the sites folder on the host side will be seen in the /sites folder in the container.
-w:     The default working directory is set to /sites here, so that after we enter the container, it will be in the /sites folder, which is D-Laravel's Projects Folder.
-t:       Allocate a pseudo-TTY
-i:       Keep STDIN open even if not attached
node: is the image we want to use.
bash: We want to execute the instructions in the container.

In other words, after executing the above command, we can enter the container.

You can enter ls to view the directory of the project.
Enter the Laravel Project directory,
You can easily npm install or npm run dev.

D-Laravel command (version 1.6.6)

Confirm the D-Laravel version.
./console version
D-Laravel release v1.6.6

way of entry
./console node

It's simpler, and when you use ./console alias to set it as an alias, it is equally effective and can be executed in any directory.






 

Tags: docker laravel

Devin Yang

Feel free to ask me, if you don't get it.:)

No Comment

Post your comment

Login is required to leave comments

Similar Stories


d-laravel, docker, laravel, docker-compose

D-Laravel v1.0.0 release change description

In order to allow the container to be used more flexibly, D-Laravel has released version v1.0.0, which is not backward compatible. https://github.com/DevinY/dlaravel/releases/tag/v1.0.0 If you are using before v1.0.0, you need to modify the .env file of the Laravel project, change DB_HOST=127.0.0.1 to DB_HOST=db If you have a custom docker-compose-custom.yml file....more

laravel

Laravel 5.6 has those new changes

Laravel 5.6 is scheduled to be released in February 2018, what changes? Let's see. (Argon2i Password Hashing Algorithm) ​​​​​​​​Argon2 provides the following three versions: 1. In Laravel 5.6, Argon2i password hashing algorithm will be supported. (Argon2i Password Hashing Algorithm) 2. Argon2d resists GPU cracking attacks to the greatest extent. 3. Argon2i is optimized to resist side-channel attacks. Third, Argon2id is a hybrid version. It follows the Argon2i method for the first pass, and then uses the Argon2d method for subsequent passes. It doesn't matter if you don't understand it, I don't understand it anyway, the point is, it's safe to be sure anyway.This is the Open Cryptography Contest (PHC) on July 20, 2015

dlaravel

D-Laravel test domain name *.dev changed to *.test

Since Google Chrome 63 will forcibly convert the domain name of *.dev to https, the domain name of the new version of D-Laravel will be changed to *.test. This article explains how to update.