FROM php:7.0-apache
RUN apt-get update
RUN apt-get install network-manager libnss3-tools jq xsel sudo git -y
RUN php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
RUN php -r "if (hash_file('SHA384', 'composer-setup.php') === '544e09ee996cdf60ece3804abc52599c22b1f40f4323403c44d44fdfdd586475ca9813a858088ffbc1f233e9b180f061') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
RUN php composer-setup.php
RUN php -r "unlink('composer-setup.php');"
RUN mv composer.phar /usr/bin/composer
RUN adduser valetuser
RUN usermod -aG sudo valetuser
RUN echo Defaults env_keep += "HOME" > /etc/sudoers.d/custom
ENV SERVER_IP 127.0.0.1
ENV SERVER_PORT 8080
# ARG DOMAIN valet.local
RUN echo $SERVER_IP >> etc.test
# Enable passwordless sudo for users under the "sudo" group
RUN sed -i.bkp -e \
's/%sudo\s\+ALL=(ALL\(:ALL\)\?)\s\+ALL/%sudo ALL=NOPASSWD:ALL/g' \
/etc/sudoers
USER valetuser
RUN composer global require cpriego/valet-linux
RUN sed -i 's/Nginx::install()/\/\/Nginx::install()/g' $HOME/.composer/vendor/cpriego/valet-linux/cli/valet.php
RUN sed -i 's/PhpFpm::install()/\/\/PhpFpm::install()/g' $HOME/.composer/vendor/cpriego/valet-linux/cli/valet.php
RUN sudo $HOME/.composer/vendor/bin/valet install
COPY entrypoint.sh /entrypoint.sh
RUN sudo chmod +x /entrypoint.sh
CMD ["/entrypoint.sh"]
#!/bin/bash
sudo -- sh -c "echo $SERVER_IP html.test >> /etc/hosts"
sed -i "s|\"80\"|\"$SERVER_PORT\"|g" /home/valetuser/.valet/config.json
sudo /home/valetuser/.composer/vendor/bin/valet share
dos2unix -k -o /entrypoint.sh
docker run -it --name valet -e SERVER_IP=172.17.0.3 -e SERVER_PORT=8080 valet-local