新乐网

Good Luck To You!

在树莓派上安装docker和lnmp

在树莓派上布置lnmp

网址:https://shumeipai.nxez.com/2020/03/21/install-pi-dashboard-with-nginx-php73-on-pi.html


错误解决办法:“Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.24/images/json: dial unix /var/run/docker.sock: connect: permission denied

解决办法:通过将用户添加到docker用户组可以将sudo去掉,命令如下

sudo groupadd docker #添加docker用户组

sudo gpasswd -a $USER docker#将登陆用户加入到docker用户组中

newgrp docker #更新用户组

一、docker安装

https://www.cnblogs.com/mq0036/p/13230906.html

二、

$ docker ps // 查看所有正在运行容器

$ docker stop containerId // containerId 是容器的ID

$ docker ps -a // 查看所有容器 $ docker ps -a -q // 查看所有容器ID

$ docker stop $(docker ps -a -q) //  stop停止所有容器

$ docker rm $(docker ps -a -q) //   remove删除所有容器  

docker rmi -f $(docker images -qa)  删除所有镜像

三、卸载docker

1. 删除某软件,及其安装时自动安装的所有包

sudo apt-get autoremove docker docker-ce docker-engine  docker.io  containerd runc

2. 删除docker其他没有没有卸载

dpkg -l | grep docker

  dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P # 删除无用的相关的配置文件

# 查询相关软件包 dpkg -l | grep docker # 删除这个包 sudo apt remove --purge docker.io  卸载docker

 

 

四、安装容器

1、安装数据库

(1)docker run -d -p 3306:3306 --restart always -e MYSQL_PASSWORD_ROOT=qq123456 --privileged=true --name mysql mariadb:10.5.9

(2)docker run -d -p 3306:3306 --restart always --privileged=true -e MYSQL_ROOT_PASSWORD=qq121857425 --name mysql pili99/mariadb10.5.9:1.0 --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci 

  说明: -d 允许后台运行   --restart always 容器和docker一起启动


2、安装PHP

docker run -d -p 9000:9000 --restart always --privileged=true -v /lnmp/php:/usr/local/etc/conf.d/ -v /lnmp/www/html:/var/www/html --link mysql:mysql --name php pili99/php8.0.3:1.0

  说明: -v 实际目录:容器目录    --link 容器名字:别名

3、安装nginx

docker run -d -p 80:80 --restart always --privileged=true -v /lnmp/nginx/:/etc/nginx/conf.d/ -v /lnmp/www/html:/usr/share/nginx/html --link php:php --name nginx pili99/nginx1.18:1.0

4、进入容器

docker exec -it nginx /bin/bash

nginx -s reload  重启nginx

 

5、安装code-server

docker run -it -d -p 8080:8080  --restart always  --privileged=true -v /lnmp/code:/home/coder/.config/code-server -v /:/lnmp --name code codercom/code-server

-v /:/home/coder/raspi  把主机整个系统映射到docker的code-server里面/home/coder/raspi 中,无法安装去掉第一个-v参数

如果无法运行,请删除-v /lnmp/code:/home/coder/.config/code-server

-p 外网端口(主机): 内网端口(docker容器)    -v  外网目录(主机):内网目录(docker容器)

    5.1、Docker安装code-server

docker run --restart always -d -it --name code-server -p 0.0.0.0:8080:8080 \

  -v "$HOME/.config:/home/coder/.config" \

  -v "$PWD:/home/coder/project" \

  -v "/lnmp/www/html:/lnmp \

  -u "$(id -u):$(id -g)" \

  -e "DOCKER_USER=$USER" \

  codercom/code-server:latest



五、配置nginx

location ~ \.php$ {

            root           /usr/local/nginx/html;

            fastcgi_pass   127.0.0.1:9000;

            fastcgi_index  index.php;

            #fastcgi_param  SCRIPT_FILENAME  /usr/local/nginx/html/$fastcgi_script_name;

            #以下方式也可以

            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;

            include        fastcgi_params;

        }

 

六、解除端口占用

    6.1找出占用端口进程的pid

        sudo lsof -i:port

     6.2 终止进程

         sudo kill -9 pid 

 

 七、安装centos7

 docker run -d -p 8080:8080 --privileged=true -v /lnmp/www/html:/www --name cs centos:7

安装centos

docker run -d -p 8384:8384 -itd --restart always --privileged=true -v /lnmp:/lnmp --name centos centos


八、查找安装的软件

dpkg -l | grep google

查找安装的谷歌软件

 


  • 评论列表

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。