Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Running composer without using sudo

I've followed the guide on installing composer globally from the composer site: https://getcomposer.org/doc/00-intro.md#globally

The problem is I have to use sudo every time I use composer. This is a pain as every vendor folder that's created with sudo composer update is under the owner of root which I have to change to www-data.

Things I've tried:

I've tried using chmod +x /usr/local/bin/composer which still requires me to run composer with sudo as the file is owned by root.

Changing owner of /usr/local/bin/composer to www-data:www-data with privileges set to 775. Still requires me to run composer with sudo prepended first.

How can I resolve this so I do not have to use sudo every time I run composer?

like image 484
ride the whirlwinds Avatar asked Mar 17 '15 23:03

ride the whirlwinds


People also ask

Why should I not run composer as root?

This is from its "plugins" and "scripts" features. Plugins and scripts have full access to the user account which runs Composer. For this reason, it is strongly advised to avoid running Composer as super-user/root.

How do I open composer?

The installer will check a few PHP settings and then download composer.phar to your working directory. This file is the Composer binary. It is a PHAR (PHP archive), which is an archive format for PHP which can be run on the command line, amongst other things. Now run php composer.phar in order to run Composer.

What is composer Phar?

Composer is a dependency management tool for PHP projects. It allows you to declare the libraries your project requires and installs/updates them for you. It is deployed as a PHAR (PHP Archive) file. Phar is already enabled by default on your DreamHost server.


1 Answers

Figured out the problem.

1) I either had to clear out the cache in /home/lamp/.composer or change the owner of this

2) And change the owner of /usr/local/bin/composer

After doing these 2 changes I can now run composer commands without using sudo.

like image 111
ride the whirlwinds Avatar answered Nov 05 '22 13:11

ride the whirlwinds