华为云云耀云服务器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

相关文章

一篇文章彻底搞懂macOS如何决定java环境

《一篇文章彻底搞懂macOS如何决定java环境》MacOS作为一个功能强大的操作系统,为开发者提供了丰富的开发工具和框架,下面:本文主要介绍macOS如何决定java环境的相关资料,文中通过代码... 目录方法一:使用 which命令方法二:使用 Java_home工具(Apple 官方推荐)那问题来了,

Nginx分布式部署流程分析

《Nginx分布式部署流程分析》文章介绍Nginx在分布式部署中的反向代理和负载均衡作用,用于分发请求、减轻服务器压力及解决session共享问题,涵盖配置方法、策略及Java项目应用,并提及分布式事... 目录分布式部署NginxJava中的代理代理分为正向代理和反向代理正向代理反向代理Nginx应用场景

Nginx搭建前端本地预览环境的完整步骤教学

《Nginx搭建前端本地预览环境的完整步骤教学》这篇文章主要为大家详细介绍了Nginx搭建前端本地预览环境的完整步骤教学,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录项目目录结构核心配置文件:nginx.conf脚本化操作:nginx.shnpm 脚本集成总结:对前端的意义很多

Linux云服务器手动配置DNS的方法步骤

《Linux云服务器手动配置DNS的方法步骤》在Linux云服务器上手动配置DNS(域名系统)是确保服务器能够正常解析域名的重要步骤,以下是详细的配置方法,包括系统文件的修改和常见问题的解决方案,需要... 目录1. 为什么需要手动配置 DNS?2. 手动配置 DNS 的方法方法 1:修改 /etc/res

解决docker目录内存不足扩容处理方案

《解决docker目录内存不足扩容处理方案》文章介绍了Docker存储目录迁移方法:因系统盘空间不足,需将Docker数据迁移到更大磁盘(如/home/docker),通过修改daemon.json配... 目录1、查看服务器所有磁盘的使用情况2、查看docker镜像和容器存储目录的空间大小3、停止dock

docker 重命名镜像的实现方法

《docker重命名镜像的实现方法》在Docker中无法直接重命名镜像,但可通过添加新标签、删除旧镜像后重新拉取/构建,或在DockerCompose中修改配置文件实现名称变更,感兴趣的可以了解一下... 目录使用标签(Tagging)删除旧的php镜像并重新拉取或构建使用docker Compose在Do

PyQt6 键盘事件处理的实现及实例代码

《PyQt6键盘事件处理的实现及实例代码》本文主要介绍了PyQt6键盘事件处理的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起... 目录一、键盘事件处理详解1、核心事件处理器2、事件对象 QKeyEvent3、修饰键处理(1)、修饰键类

docker编写java的jar完整步骤记录

《docker编写java的jar完整步骤记录》在平常的开发工作中,我们经常需要部署项目,开发测试完成后,最关键的一步就是部署,:本文主要介绍docker编写java的jar的相关资料,文中通过代... 目录all-docker/生成Docker打包部署文件配置服务A的Dockerfile (a/Docke

linux部署NFS和autofs自动挂载实现过程

《linux部署NFS和autofs自动挂载实现过程》文章介绍了NFS(网络文件系统)和Autofs的原理与配置,NFS通过RPC实现跨系统文件共享,需配置/etc/exports和nfs.conf,... 目录(一)NFS1. 什么是NFS2.NFS守护进程3.RPC服务4. 原理5. 部署5.1安装NF

Nginx屏蔽服务器名称与版本信息方式(源码级修改)

《Nginx屏蔽服务器名称与版本信息方式(源码级修改)》本文详解如何通过源码修改Nginx1.25.4,移除Server响应头中的服务类型和版本信息,以增强安全性,需重新配置、编译、安装,升级时需重复... 目录一、背景与目的二、适用版本三、操作步骤修改源码文件四、后续操作提示五、注意事项六、总结一、背景与