华为云云耀云服务器L实例评测|在Docker环境下部署PrestaShop电子商务系统

本文主要是介绍华为云云耀云服务器L实例评测|在Docker环境下部署PrestaShop电子商务系统,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

华为云云耀云服务器L实例评测|在Docker环境下部署PrestaShop电子商务系统

  • 一、前言
    • 1.1 云耀云服务器L实例简介
    • 1.2 PrestaShop简介
  • 二、本次实践介绍
    • 2.1 本次实践简介
    • 2.2 本次环境规划
  • 三、购买云耀云服务器L实例
    • 3.1 购买云耀云服务器L实例
    • 3.2 查看云耀云服务器L实例状态
    • 3.3 重置服务器密码
  • 四、检查Docker环境
    • 4.1 Xshell远程连接服务器
    • 4.2 检查Docker版本
    • 4.3 检查docker compose版本
    • 4.4 检查本地当前容器
  • 五、下载PrestaShop镜像
    • 5.1 配置Docker镜像加速
    • 5.2 下载PrestaShop镜像
  • 六、部署PrestaShop电子商务系统
    • 5.1 创建挂载目录
    • 5.2 编辑docker-compose.yaml文件
    • 5.3 部署PrestaShop
    • 5.4 查看容器运行状态
  • 七、访问PrestaShop网站
    • 7.1 放行安全组端口
    • 7.2 PrestaShop的初始化配置
    • 7.3 访问PrestaShop后台
    • 7.4 访问PrestaShop前台

一、前言

1.1 云耀云服务器L实例简介

云耀云服务器L实例是新一代的轻量应用云服务器,专为中小企业和开发者设计,提供便捷的开箱即用体验。该产品提供丰富且经过严格筛选的应用镜像,可一键部署应用,极大程度简化了客户在云端构建电商网站、Web应用、小程序、学习环境以及各类开发测试等任务的过程。

在这里插入图片描述

1.2 PrestaShop简介

PrestaShop 是一款开源电子商务网络应用程序,致力于为商家和客户提供最佳的购物车体验。它是用 PHP 编写的,高度可定制,支持所有主要支付服务,被翻译成多种语言并针对许多国家进行本地化,具有完全响应式设计(前台和后台)等。

二、本次实践介绍

2.1 本次实践简介

1.本次实践为个人测试学习环境,旨在快速部署应用,生产环境请谨慎;
2.本次实践环境为云耀云服务器L实例,使用的应用镜像为Portainer 2.18.4;
3.在Portainer平台上部署PrestaShop电子商务系统。

2.2 本次环境规划

服务器类别应用镜像内网IP地址Docker版本Portainer版本PrestaShop版本
云耀云服务器L实例Docker可视化Portainer192.168.0.16824.0.42.18.48.1.1

三、购买云耀云服务器L实例

3.1 购买云耀云服务器L实例

1.官网链接:https://www.huaweicloud.com/product/hecs-light.html
2.购买规格:
区域:华北—北京四;
应用镜像:Docker可视化-Portainer;
实例规格:2核2G/系统盘40G/峰值带宽 3Mbps/流量包400G;
实例名称:自定义即可,这里编辑为HECS-L-Portainer;
购买时长:1个月。

在这里插入图片描述

3.2 查看云耀云服务器L实例状态

查看购买的云耀云服务器L实例状态,处在正常运行中。

在这里插入图片描述

3.3 重置服务器密码

点击远程登录云耀云服务器L实例

在这里插入图片描述

在这里插入图片描述

重置密码,点击右侧的重置密码选项,需要进行身份验证,选择手机验证后,即可重置密码成功。

在这里插入图片描述

在这里插入图片描述

四、检查Docker环境

4.1 Xshell远程连接服务器

  • 复制弹性公网IP地址,远程连接服务器时使用。

在这里插入图片描述

  • 在Xshell工具中,填写服务器弹性公网IP地址、账号密码信息,ssh连接远程服务器。

在这里插入图片描述

在这里插入图片描述

4.2 检查Docker版本

检查Docker当前版本,云耀云服务器L实例使用Portainer应用镜像时,Docker环境已自动安装完毕,无需重新安装Docker环境。

root@hcss-ecs-f91c:~# docker version
Client: Docker Engine - CommunityVersion:           24.0.4API version:       1.43Go version:        go1.20.5Git commit:        3713ee1Built:             Fri Jul  7 14:50:55 2023OS/Arch:           linux/amd64Context:           defaultServer: Docker Engine - CommunityEngine:Version:          24.0.4API version:      1.43 (minimum version 1.12)Go version:       go1.20.5Git commit:       4ffc614Built:            Fri Jul  7 14:50:55 2023OS/Arch:          linux/amd64Experimental:     falsecontainerd:Version:          1.6.21GitCommit:        3dce8eb055cbb6872793272b4f20ed16117344f8runc:Version:          1.1.7GitCommit:        v1.1.7-0-g860f061docker-init:Version:          0.19.0GitCommit:        de40ad0

4.3 检查docker compose版本

检查docker compose版本,新版Docker自动集成安装了docker compose 工具。

root@hcss-ecs-f91c:~# docker compose version
Docker Compose version v2.19.1

4.4 检查本地当前容器

检查本地当前运行容器,云耀云服务器L实例使用Portainer应用镜像时,会部署Docker环境以及创建portainer服务的容器。

root@hcss-ecs-f91c:~# docker ps
CONTAINER ID   IMAGE                           COMMAND        CREATED        STATUS        PORTS                                                           NAMES
866f19377f2d   portainer/portainer-ce:2.18.3   "/portainer"   44 hours ago   Up 43 hours   8000/tcp, 9443/tcp, 0.0.0.0:9091->9000/tcp, :::9091->9000/tcp   portainer

五、下载PrestaShop镜像

5.1 配置Docker镜像加速

云耀云服务器L实例的Docker应用镜像场景中,从docker hub拉取镜像的速度还是比较快的。当某些镜像拉取过慢时,可尝试配置镜像加速。

  • 编辑或新建/etc/docker/daemon.json文件,向其中添加registry-mirrors项。
 vim /etc/docker/daemon.json
{"registry-mirrors": ["https://docker.mirrors.sjtug.sjtu.edu.cn"]
}
  • 重启Docker服务
systemctl daemon-reload
systemctl restart docker

5.2 下载PrestaShop镜像

从docker hub下载PrestaShop镜像

docker pull mariadb:10.6
docker pull prestashop/prestashop:latest

在这里插入图片描述

六、部署PrestaShop电子商务系统

5.1 创建挂载目录

新建目录/data/prestashop/

mkdir -p /data/prestashop/{data,db} && cd /data/prestashop

5.2 编辑docker-compose.yaml文件

新建编辑docker-compose.yaml文件,其中PS_DOMAIN变量的IP地址为服务器的内网IP地址,可通过云耀云服务器L实例的管理页面查询到。

version: "3.9"
services:db:image: mariadb:10.6container_name: prestashop-dbhostname: prestashop-dbsecurity_opt:- no-new-privileges:truehealthcheck:test: ["CMD-SHELL", "mysqladmin ping -u root -pprestashop | grep 'mysqld is alive' || exit 1"]volumes:- /data/prestashop/db:/var/lib/mysql:rwenvironment:TZ: Asia/ShanghaiMYSQL_ROOT_PASSWORD: prestashopMYSQL_USER: prestashopMYSQL_PASSWORD: prestashopMYSQL_DATABASE: prestashopprestashop:image: prestashop/prestashop:latestcontainer_name: prestashophostname: prestashopsecurity_opt:- no-new-privileges:trueports:- 8910:80volumes:- /data/prestashop/data:/var/www/html:rwenvironment:DB_SERVER: prestashop-dbDB_NAME: prestashopDB_USER: prestashopuserDB_PASSWD: prestashoppassPS_DOMAIN: 192.168.0.168:8910depends_on:- dblinks:- db:prestashop-db

5.3 部署PrestaShop

  • 可通过Portainer的堆栈方式部署

在这里插入图片描述

  • 通过docker compose直接部署
root@hcss-ecs-f91c:/data/prestashop# ls
data  db  docker-compose.yaml
root@hcss-ecs-f91c:/data/prestashop# docker compose up -d
[+] Running 3/3✔ Network prestashop_default  Created                                                                                                                                    0.0s✔ Container prestashop-db     Started                                                                                                                                    0.4s✔ Container prestashop        Started                                                                                                                                    0.6s

5.4 查看容器运行状态

查看容器运行状态,确保容器正常运行。

root@hcss-ecs-f91c:/data/prestashop# docker ps
CONTAINER ID   IMAGE                           COMMAND                  CREATED         STATUS                   PORTS  NAMES
82a8ee3b23b7   prestashop/prestashop:latest    "docker-php-entrypoi…"   2 minutes ago   Up 2 minutes             0.0.0.0:8910->80/tcp, :::8910->80/tcp  prestashop
b04c3a22c40c   mariadb:10.6                    "docker-entrypoint.s…"   2 minutes ago   Up 2 minutes (healthy)   3306/tcp

七、访问PrestaShop网站

7.1 放行安全组端口

在云瑶云服务器L实例的安全组管理页面,在入方向上放行8910端口。

在这里插入图片描述

在这里插入图片描述

7.2 PrestaShop的初始化配置

  • 访问地址:http://弹性公网IP地址:8910,将IP替换为自己服务器的弹性公网IP地址。

在这里插入图片描述

  • 设置系统语言为中文

在这里插入图片描述

  • 同意许可协议

在这里插入图片描述

  • 设置网站信息

店铺名称:myshop;
主要业务:自定义,这里选择计算机硬件和软件;
是否启动ssl:选择否;
名:san;
姓:zhang;
邮箱地址:jeven166@163.com;
店铺密码:自定义。

在这里插入图片描述

  • 安装演示产品和模块

在这里插入图片描述

  • 系统配置,填写数据库信息。

在这里插入图片描述

  • 开始安装PrestaShop

在这里插入图片描述
在这里插入图片描述

7.3 访问PrestaShop后台

  • 点击访问后台,会提示以下报错,根据报错信息修改。

在这里插入图片描述

在这里插入图片描述

  • 进入PrestaShop容器内,删除install/目录和重命名admin/目录。
root@hcss-ecs-f91c:/data/prestashop# docker exec -it prestashop /bin/bash
root@prestashop:/var/www/html# ls
INSTALL.txt  admin	   bin	    composer.lock  docs		  img	     install	   mails     pdf		templates  translations  vendor
LICENSES     app	   cache    config	   download	  index.php  js		   modules   phpstan.neon.dist	themes	   upload	 webservice
Makefile     autoload.php  classes  controllers    error500.html  init.php   localization  override  src		tools	   var
root@prestashop:/var/www/html# rm -rf install/
root@prestashop:/var/www/html# mv admin/ admin730gc0bh93h9hpfocrm/
  • 重新访问后台地址:http://弹性公网IP地址/admin730gc0bh93h9hpfocrm/

在这里插入图片描述
在这里插入图片描述

7.4 访问PrestaShop前台

访问前台地址:http://xxxx:8910/index.php
将IP改为自己服务器的弹性公网IP地址。

在这里插入图片描述

这篇关于华为云云耀云服务器L实例评测|在Docker环境下部署PrestaShop电子商务系统的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/373178

相关文章

通过Docker容器部署Python环境的全流程

《通过Docker容器部署Python环境的全流程》在现代化开发流程中,Docker因其轻量化、环境隔离和跨平台一致性的特性,已成为部署Python应用的标准工具,本文将详细演示如何通过Docker容... 目录引言一、docker与python的协同优势二、核心步骤详解三、进阶配置技巧四、生产环境最佳实践

SpringBoot+RustFS 实现文件切片极速上传的实例代码

《SpringBoot+RustFS实现文件切片极速上传的实例代码》本文介绍利用SpringBoot和RustFS构建高性能文件切片上传系统,实现大文件秒传、断点续传和分片上传等功能,具有一定的参考... 目录一、为什么选择 RustFS + SpringBoot?二、环境准备与部署2.1 安装 RustF

Nginx部署HTTP/3的实现步骤

《Nginx部署HTTP/3的实现步骤》本文介绍了在Nginx中部署HTTP/3的详细步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录前提条件第一步:安装必要的依赖库第二步:获取并构建 BoringSSL第三步:获取 Nginx

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

Web服务器-Nginx-高并发问题

《Web服务器-Nginx-高并发问题》Nginx通过事件驱动、I/O多路复用和异步非阻塞技术高效处理高并发,结合动静分离和限流策略,提升性能与稳定性... 目录前言一、架构1. 原生多进程架构2. 事件驱动模型3. IO多路复用4. 异步非阻塞 I/O5. Nginx高并发配置实战二、动静分离1. 职责2

redis-sentinel基础概念及部署流程

《redis-sentinel基础概念及部署流程》RedisSentinel是Redis的高可用解决方案,通过监控主从节点、自动故障转移、通知机制及配置提供,实现集群故障恢复与服务持续可用,核心组件包... 目录一. 引言二. 核心功能三. 核心组件四. 故障转移流程五. 服务部署六. sentinel部署

Linux搭建ftp服务器的步骤

《Linux搭建ftp服务器的步骤》本文给大家分享Linux搭建ftp服务器的步骤,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录ftp搭建1:下载vsftpd工具2:下载客户端工具3:进入配置文件目录vsftpd.conf配置文件4:

MySQL的配置文件详解及实例代码

《MySQL的配置文件详解及实例代码》MySQL的配置文件是服务器运行的重要组成部分,用于设置服务器操作的各种参数,下面:本文主要介绍MySQL配置文件的相关资料,文中通过代码介绍的非常详细,需要... 目录前言一、配置文件结构1.[mysqld]2.[client]3.[mysql]4.[mysqldum

Linux查询服务器 IP 地址的命令详解

《Linux查询服务器IP地址的命令详解》在服务器管理和网络运维中,快速准确地获取服务器的IP地址是一项基本但至关重要的技能,下面我们来看看Linux中查询服务器IP的相关命令使用吧... 目录一、hostname 命令:简单高效的 IP 查询工具命令详解实际应用技巧注意事项二、ip 命令:新一代网络配置全