当前位置: 首页 > news >正文

做网站云主机在那个网站做任务赚

做网站云主机,在那个网站做任务赚,5g对网站建设的影响,上海建设行政主管部门政务网站Docker Compose简介 Compose 是用于定义和运行多容器 Docker 应用程序的工具。通过 Compose#xff0c;您可以使用 YML 文件来配置应用程序需要的所有服务。然后使用一个命令#xff0c;就可以从 YML 文件配置中创建并启动所有服务。而DockerCompose作为一种容器编排工具您可以使用 YML 文件来配置应用程序需要的所有服务。然后使用一个命令就可以从 YML 文件配置中创建并启动所有服务。而DockerCompose作为一种容器编排工具可以让我们轻松地配置和管理多个Docker容器从而快速搭建PHP开发环境。 Compose 使用的三个步骤 使用 Dockerfile 定义应用程序的环境。使用 docker-compose.yml 定义构成应用程序的服务这样它们可以在隔离环境中一起运行。如果你还不了解 YML 文件配置可以先阅读 YAML 入门教程。最后执行 docker-compose up 命令来启动并运行整个应用程序。 安装docker Ubuntu 依次执行下面的命令 # 更新apt sudo apt update sudo apt upgrade # 安装依赖 sudo apt-get install ca-certificates curl gnupg lsb-release # 添加Docker官方GPG密钥 curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add - # 配置Docker镜像源 sudo add-apt-repository deb [archamd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable # 安装docker sudo apt-get install docker-ce docker-ce-cli containerd.io # 配置用户组可选 sudo usermod -aG docker $USER # 查看版本检查是否安装成功 docker --version # 启动docker一般安装完会自动启动如果没有启动请手动执行 systemctl start dockerCentOS 依次执行下面的命令 # 安装依赖 yum install -y yum-utils device-mapper-persistent-data lvm2 # 配置Docker镜像源 yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo # 更新yum软件包索引 yum makecache fast # 安装docker yum install docker-ce # 查看版本检查是否安装成功 docker --version # 启动docker一般安装完会自动启动如果没有启动请手动执行 systemctl start docker安装docker-compose 访问Releases · docker/compose (github.com)查看最新版本 然后依次执行下面的命令 # 下载docker-compose文件自行修改版本号 sudo curl -L https://github.com/docker/compose/releases/download/v2.24.6/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose# 给他执行权限 sudo chmod x /usr/local/bin/docker-compose# 查看是否安装成功 docker-compose --version如果觉得下载慢可以将github.com替换为其他镜像域名加速下载例如 sudo curl -L https://hub.nuaa.cf/docker/compose/releases/download/v2.24.6/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-composedocker-compose初始配置 创建初始 docker-compose.yml 文件不含各服务的配置文件映射在哪个目录不做要求内容如下自行修改项目路径和配置文件路径为自己的电脑文件夹路径我这里新建在home/docker目录下 #yaml 配置实例 version: 3 services:php:container_name: php7.4image: php:7.4-fpmrestart: alwaysprivileged: trueports:- 9000:9000volumes:- /home/www:/var/www # php代码目录nginx:container_name: nginximage: nginx:latestprivileged: truerestart: alwaysenvironment:- TZAsia/Shanghaiports:- 80:80- 443:443depends_on:- phpvolumes:- /home/www:/var/www # php代码目录- /home/docker/nginx/logs:/var/log/nginx # nginx日志文件mysql:image: mysql:5.7container_name: mysql5.7privileged: truerestart: alwaysports:- 3306:3306volumes:- /home/docker/mysql/data:/var/lib/mysql # mysql数据目录- /home/docker/mysql/log:/var/log/mysql # mysql日志文件- /etc/localtime:/etc/localtime:ro # 让容器的时钟与宿主机时钟同步避免时间的问题ro是read only只读的意思environment:- MYSQL_ROOT_PASSWORD123456 # root账户密码redis:image: redis:latestcontainer_name: redisprivileged: truerestart: alwaysports:- 6379:6379command: redis-server /usr/local/redis/conf/redis.conf # 启动redis服务并指定配置文件volumes:- /home/docker/redis/data:/data # redis数据目录- /home/docker/redis/conf/redis.conf:/usr/local/redis/conf/redis.conf #redis配置文件常用参数说明 version指定Docker Compose文件的语法版本3是当前广泛使用的版本 services要运行的服务里面是各个服务名称和服务配置 container_name容器名称 image使用的镜像名称 restart容器在退出后的行为[always总是重启容器no不重启unless-stopped重启容器除非容器被手动停止on-failure退出状态码不为0即失败时自动重启该容器] networks将当前容器加入到这个网络中以方便数据传输默认是使用brige连接方式名为docker_default的网络但重启容器后会改变ip地址如果要固定容器ip就要自定义网络 volumes宿主机和容器的目录映射 environment添加环境变量可添加一个或多个键值对布尔含义的值要用引号包裹 ports宿主机和容器的端口映射 build使用当前目录下的dockerfile构建 expose暴露容器端口但不映射到宿主机只通过ip等方式访问容器的时候访问 depends_on以依赖性顺序启动服务先启动depends_on中的服务再启动当前服务注意事项服务启动不会等依赖服务里面的程序启动完才启动只依赖服务是否启动 privileged给容器root权限 启动服务 在 docker-compose.yml 文件所在的目录下执行下面的命令一键启动所有服务 docker-compose up现在打开浏览器访问locahost应该能访问到nginx的首页了如果你是在本地电脑或虚拟机的docker需要在宿主机添加hosts文件ip映射 # 将ip改为你的服务器ip 192.168.204.128 demo.net下面是docker-compose的其他命令 # 一键启动所有服务 docker-compose up# 或者启动所有服务并在后台运行 docker-compose up -d# 停止服务 docker-compose stop# 重启服务 docker-compose restart# 进入指定容器 docker-compose exec [service_name] bash# 查看容器状态 docker-compose ps复制配置文件 如果你不需要自定义配置各个服务可以跳过这个也不用下一步调整docker-compose配置 复制容器的默认配置文件到宿主机冒号前是容器名称冒号后面是容器中配置文件的路径最后是宿主机的配置文件存放目录如果宿主机目录不存在请创建 # nginx sudo docker cp nginx:/etc/nginx/nginx.conf /home/docker/nginx/nginx.conf sudo docker cp nginx:/etc/nginx/conf.d /home/docker/nginx/conf.d # php sudo docker cp php7.4:/usr/local/etc/php/php.ini-production /home/docker/php/php.ini # mysql sudo docker cp mysql5.7:/etc/my.cnf /home/docker/mysql/my.cnf # redis 自动生成空白配置调整docker-compose配置 这个配置加入了各个服务自定义的配置文件映射先执行docker-compose stop停止服务然后用下面的配置替换上面 docker-compose.yml 文件的初始配置然后重新启动服务即可 #yaml 配置实例 version: 3 services:php:container_name: php7.4image: php:7.4-fpmrestart: alwaysprivileged: trueports:- 9000:9000volumes:- /home/www:/var/www # php代码目录- /home/docker/php/php.ini:/usr/local/etc/php/php.ini # php配置文件目录nginx:container_name: nginximage: nginx:latestprivileged: truerestart: alwaysenvironment:- TZAsia/Shanghaiports:- 80:80- 443:443depends_on:- phpvolumes:- /home/docker/nginx/nginx.conf:/etc/nginx/nginx.conf # nginx配置文件目录- /home/docker/nginx/conf.d:/etc/nginx/conf.d # nginx虚拟主机配置文件目录- /home/www:/var/www # php代码目录- /home/docker/nginx/logs:/var/log/nginx # nginx日志目录mysql:image: mysql:5.7container_name: mysql5.7privileged: truerestart: alwaysports:- 3306:3306volumes:- /home/docker/mysql/data:/var/lib/mysql # mysql数据目录- /home/docker/mysql/my.cnf:/etc/my.cnf # mysql配置文件- /home/docker/mysql/log:/var/log/mysql # mysql日志文件- /etc/localtime:/etc/localtime:ro # 让容器的时钟与宿主机时钟同步避免时间的问题ro是read only只读的意思environment:- MYSQL_ROOT_PASSWORD123456 # root账户密码redis:image: redis:latestcontainer_name: redisprivileged: truerestart: alwaysports:- 6379:6379command: redis-server /usr/local/redis/conf/redis.conf # 启动redis服务并指定配置文件volumes:- /home/docker/redis/data:/data # redis数据目录- /home/docker/redis/conf/redis.conf:/usr/local/redis/conf/redis.conf #redis配置文件新建站点 创建站点配置文件例如网站域名是http://demo.net那么就在ngxin/conf.d目录下新建一个demo.net.conf cd /home/docker/nginx/conf.d sudo vi demo.net.conf文件内容如下 server {listen 80;server_name www.demo.net demo.net;root /var/www/demo;index index.php index.html;location ~ \.php(.*)$ {fastcgi_pass php:9000;fastcgi_index index.php;fastcgi_split_path_info ^((?U).\.php)(/?.)$;fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;fastcgi_param PATH_INFO $fastcgi_path_info;fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;include fastcgi_params;} }注意修改你的root为容器里的代码目录server_name为你的域名 在你的站点代码目录新建php文件内容随便写 cd /var sudo mkdir www cd ./www sudo mkdir demo sudo vi test.php?php echo hello world;如果你是在本地电脑或虚拟机的docker需要在宿主机添加hosts文件ip映射 # 将ip改为你的服务器ip 192.168.204.128 demo.net然后重启服务现在打开浏览器访问http://demo.net/test.php就能看到输入的hello world了 常见问题 laravel、thinkphp等框架站点配置伪静态示例 server {listen 80;server_name hello.net;root /var/www/hello/public; # 站点根目录include /var/www/hello/public/nginx.htaccess; # 配置伪静态location ~ \.php(.*)$ {fastcgi_pass php:9000;fastcgi_index index.php;fastcgi_split_path_info ^((?U).\.php)(/?.)$;fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;fastcgi_param PATH_INFO $fastcgi_path_info;fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;include fastcgi_params;} }laravel框架报错The stream or file /var/www/hello/storage/logs/laravel.log could not be opened in append mode: failed to open stream: Permission denied The exception occurred while attempting to log 原因日志目录没有权限 解决sudo chmod -R 777 storage laravel框架报错could not find driver (SQL: select * from admin_userswhereusername admin limit 1) 原因没有安装php-pdo驱动 解决 1.进入php容器一次执行下面的命令安装驱动 docker-compose exec php bash docker-php-ext-install pdo pdo_mysql2.在php.ini文件添加扩展 extensionpdo_mysql3.重启容器
http://www.dnsts.com.cn/news/191319.html

相关文章:

  • 网站互动推广合肥瑶海区邮编
  • 做烘培的网站有哪些怎么做网站像淘宝这样的
  • wordpress图片灯箱优化网站浏览量怎么看
  • 网站建设注册宝安区建设交易网站
  • 网站建设人员需求分析丰和园林建设集团网站
  • 网站开发的形式有做网站要遵守的基本原则
  • 潍坊知名网站建设公司python 网站建设
  • 东莞市专注网站建设怎么样wordpress适用于任何网站吗
  • 一份完整的网站策划书有口碑的企业网站建设
  • 58网站怎么做才有客户问网站页面维护
  • 怎么快速建一个网站深圳华企立方
  • 网站开发相关书籍资料做公司网站需要什么材料
  • 春季高考网站建设个人网站怎么写
  • WordPress网站小程序线上广告投放渠道
  • 网站建设 大公司排名python下载安装
  • wordpress 4.0 关闭评论seo领导屋
  • 打开云南省住房和城乡建设厅网站济南网上注册公司流程
  • 网站被入侵后需做的检测 1东莞建设工程招标网
  • 怎么把网站列入黑名单哪家公司做网站比较好
  • 查网站是否正规wordpress给指定用户设置角色
  • 秀米网站怎么做推文wordpress主题分为多章节
  • 互联网 网站建设四川成都高端网站建设
  • 太仓网站制作书生能打开所有网址的浏览器
  • 手机网站首页模板广告生成器在线制作
  • 我想做网站 怎么做呢ckeditor 转wordpress
  • 措勤网站建设网站公司做网站修改会收费吗
  • 做电商网站的设计思路有什么意思广告设计工作内容
  • 常州制作网站公司电商网站制作方案
  • 手机建站网站网站上图片不能下载 该怎么做
  • 聚美优品的网站建设网站框架分类