<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[arthurchan2021的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/arthurchan2021</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; arthurchan2021]]></copyright><item><title><![CDATA[用Podman搭建LAMP开发环境的容器(六) -- 使用普通用户]]></title><link>https://blog.youkuaiyun.com/arthurchan2021/article/details/142502717</link><guid>https://blog.youkuaiyun.com/arthurchan2021/article/details/142502717</guid><author>arthurchan2021</author><pubDate>Tue, 24 Sep 2024 23:20:38 +0800</pubDate><description><![CDATA[现在这个容器还是直接用root用户跑的。虽然说如果只是开发环境的话，而且是一个虚拟机容器，直接用root用户工作应该也问题不大。不过我还是想在一般情况下用普通用户。首先我要改containerfile文件的脚本，来创建一个普通用户。并做或相关的配置，比如说权限什么的。，好让这些命令是用root用户运行的，否则权限不够。今天到这，接下来配置存储vscode扩展的卷(存储空间)。哦，现在容器是在用普通用户的身份运行的，所以。挺顺利的，现在我看到bash是用。，就要在安装软件包的时候把。在VSCode中运行。]]></description><category></category></item><item><title><![CDATA[用Podman搭建LAMP开发环境的容器(五) -- 端口转发]]></title><link>https://blog.youkuaiyun.com/arthurchan2021/article/details/142471124</link><guid>https://blog.youkuaiyun.com/arthurchan2021/article/details/142471124</guid><author>arthurchan2021</author><pubDate>Mon, 23 Sep 2024 23:24:50 +0800</pubDate><description><![CDATA[虽然现在看着好像是差不多了，也可以在VSCode上面编写代码了。但是还有一个很大的问题：容器中Apache服务的端口并没有映射到本地，所以现在用浏览器不能访问我写的页面，也不能访问phpMyAdmin。我想应该可以通过它来配置。不过有个问题，按照参数的格式应该不能改变本机的端口号，只能在容器中是什么端口号在本机也是什么端口号。前段时间因为觉得每天折腾完立即发博客好像每篇博客的内容太少了，于是就想改成搞完一个主题在发。今天就到这，接下来考虑配置在普通用户下面工作，现在还是跑在root用户下的，总觉得不舒服。]]></description><category></category></item><item><title><![CDATA[用Podman搭建LAMP开发环境的容器(四)--使用VS Code]]></title><link>https://blog.youkuaiyun.com/arthurchan2021/article/details/142371807</link><guid>https://blog.youkuaiyun.com/arthurchan2021/article/details/142371807</guid><author>arthurchan2021</author><pubDate>Thu, 19 Sep 2024 23:04:32 +0800</pubDate><description><![CDATA[这样收也对，不过如果在本地安装所有项目所需要的VSCode的插件，特别是我这样项目比较杂的情况（有PHP的，有C++的，还有嵌入式的），VSCode可是要安装一大堆的插件。比如我正在做一个PHP项目，VSCode却要加载一大堆于这个项目无关的插件，比如说C++支持呀、Makefile支持呀等等，先不说耗资源，看着插件栏里那一堆图标就很烦。现在我开始着手去解决我的另一个需求：如果可能会长期同时做多个项目的开发的话，就会可能遇到可能很多项目之间对开发环境都有不同的需求，这样是我为什么要用Podman的初衷。]]></description><category></category></item><item><title><![CDATA[用Podman搭建LAMP开发环境的容器(三)--增加phpMyAdmin]]></title><link>https://blog.youkuaiyun.com/arthurchan2021/article/details/141874956</link><guid>https://blog.youkuaiyun.com/arthurchan2021/article/details/141874956</guid><author>arthurchan2021</author><pubDate>Wed, 04 Sep 2024 00:16:58 +0800</pubDate><description><![CDATA[虽然说已经是可以使用了，但是每次访问数据库都要进入容器，然后通过命令行方式的客户端进行访问。如果成功的话，就可以比较方便的操作数据库了。然后下载“phpMyAdmin-5.2.1-all-languages.tar.gz”文件到Containerfile文件所在的文件夹。看到版本我突然意识到：要看看这个版本的基本需求是什么，因为我安排的php的版本是7.4的，在现在说来应该算是比较就的版本。在phpMyAdmin 5.2.0的发行说明中，我看到需要PHP7.2或更高的版本，我装的是7.4的，看来是满足的。]]></description><category></category></item><item><title><![CDATA[用Podman搭建LAMP开发环境的容器(二) -- 让数据库保存在本地]]></title><link>https://blog.youkuaiyun.com/arthurchan2021/article/details/141652376</link><guid>https://blog.youkuaiyun.com/arthurchan2021/article/details/141652376</guid><author>arthurchan2021</author><pubDate>Wed, 28 Aug 2024 23:29:20 +0800</pubDate><description><![CDATA[仔细想想应该不行，因为entrypoint.sh是容器每次启动时都会运行的，如果这样做不是每次启动容器都会初始化一次数据库？只能再多做一些事情了，在容器启动时先判断数据库是否已经初始化了，如果是就直接启动MariaDB服务，否则初始化数据库后再启动MariaDB服务。我知道在ubuntu下mariadb的数据默认是保存在/var/lib/mysql目录下的，所以我想是不是做创建(运行)容器的时候把项目用于保存数据的目录挂载到容器的/var/lib/mysql就行了？糟糕，我看到了红色的[fail]。]]></description><category></category></item><item><title><![CDATA[用Podman搭建LAMP开发环境的容器(一)]]></title><link>https://blog.youkuaiyun.com/arthurchan2021/article/details/141615084</link><guid>https://blog.youkuaiyun.com/arthurchan2021/article/details/141615084</guid><author>arthurchan2021</author><pubDate>Tue, 27 Aug 2024 23:36:29 +0800</pubDate><description><![CDATA[现在把之前的文件夹复制一份出来，作为一个新的容器镜像的配置。重新起个名字，既然已经加入了MariaDB，加上之前的Apache和PHP，那么就叫LAMP吧(Linux+Apache+MaraiDB+PHP)。经过前些天的折腾，现在我已经有一个基本可以用的apache+php的Podman容器了。不过一般的PHP项目应该都离不开数据库，所以从今天开始我想尝试在之前的基础上安装和配置MariaDB数据服务。今天就到这，下一步是对MariaDB进一步的配置，比如把数据文件存储到容器外面。]]></description><category></category></item><item><title><![CDATA[用Podman从零开始构建并运行一个Apache+PHP的容器镜像 （五)]]></title><link>https://blog.youkuaiyun.com/arthurchan2021/article/details/141576341</link><guid>https://blog.youkuaiyun.com/arthurchan2021/article/details/141576341</guid><author>arthurchan2021</author><pubDate>Tue, 27 Aug 2024 00:03:38 +0800</pubDate><description><![CDATA[但是可能有些项目页面代码不一定是存在这个目录的，这样就要修改000-default.conf文件，然后再重新构建一个新的容器镜像，如此多少还是不够方便的。解决思路是在创建项目容器的时候将实际的DocumentRoot作为环境变量传递给容器，这样我只需要修改000-default.conf的配置使用这个环境变量就可以了。我也不知道具体愿意是什么，不过不管了，反正也是可以用了。)，本来想着这个星期开始折腾其它东西去了，比如再加上一个mariadb服务什么的。竟然提示MY_DOCUMENT_ROOT没有定义！]]></description><category></category></item><item><title><![CDATA[用Podman从零开始构建并运行一个Apache+PHP的容器镜像 （四)]]></title><link>https://blog.youkuaiyun.com/arthurchan2021/article/details/141440550</link><guid>https://blog.youkuaiyun.com/arthurchan2021/article/details/141440550</guid><author>arthurchan2021</author><pubDate>Thu, 22 Aug 2024 23:48:41 +0800</pubDate><description><![CDATA[而安装Apache2时会有一个默认的站点配置是生效的，它就是：/etc/apache2/sites-enabled/000-default.conf，而它的真身是：/etc/apache2/sites-available/000-default.conf。如果直接简单粗暴的把./src/public挂载到容器的/var/www/html下虽然好像问题是解决了，但是如果有些页面包含或引用了./src/config或./src/inc的文件就会出问题了，因为这些东西没有挂载到容器中。]]></description><category></category></item><item><title><![CDATA[用Podman从零开始构建并运行一个Apache+PHP的容器镜像 （三)]]></title><link>https://blog.youkuaiyun.com/arthurchan2021/article/details/141404985</link><guid>https://blog.youkuaiyun.com/arthurchan2021/article/details/141404985</guid><author>arthurchan2021</author><pubDate>Wed, 21 Aug 2024 23:22:13 +0800</pubDate><description><![CDATA[所以相信需要把存放在宿主机上的项目代码挂载到容器上去，这样我就可以在宿主机上编辑项目的代码，而实际运行这项代码就交给了Podman容器。但是如果我同时在开发多个项目，而且每个项目依赖的环境可能不同（比如说PHP的版本），通过容器跑项目的运行环境就很有优势了。因为站点的这些源码是要不断增加和修改的，按上面的方法就只能每次做了增加或修改想要看看实际运行效果就需要构建一次，再重新运行容器。首先我需要创建一个存放项目源代码的文件夹，因为这是一个实验，为了简单就将项目的代码粗暴的放在项目文件夹的根目录吧。]]></description><category></category></item><item><title><![CDATA[用Podman从零开始构建并运行一个Apache+PHP的容器镜像 （二)]]></title><link>https://blog.youkuaiyun.com/arthurchan2021/article/details/141371026</link><guid>https://blog.youkuaiyun.com/arthurchan2021/article/details/141371026</guid><author>arthurchan2021</author><pubDate>Tue, 20 Aug 2024 23:47:18 +0800</pubDate><description><![CDATA[里记录了我在不依赖像Docker Hub这样的镜像源的情况下粗略的搭建了一个php+apache的服务器Podman容器。*这里有一个坑，我是在windows下编辑这个文件的，结果容器运行时出错了。后来查了好久才发现是文件的换行符问题，这个文件的换行符一定要是LF，否则不行！首先，现在的这个容器的Apache服务不会自动启动，需要启动容器后再手工启动容器，这显然太不方便了。熟悉Ubuntu的朋友应该都知道，再Ubuntu下启动Apache服务器其实只要使用service命令就可以了的。]]></description><category></category></item><item><title><![CDATA[用Podman从零开始构建并运行一个Apache+PHP的容器镜像 （一)]]></title><link>https://blog.youkuaiyun.com/arthurchan2021/article/details/141337610</link><guid>https://blog.youkuaiyun.com/arthurchan2021/article/details/141337610</guid><author>arthurchan2021</author><pubDate>Mon, 19 Aug 2024 23:57:15 +0800</pubDate><description><![CDATA[前几天，我已经在不依赖Docker Hub等外部镜像源的情况下，使用Podman成功构建了一个Ubuntu容器镜像。这次，我想在此基础上更进一步，构建一个能够运行PHP脚本的Apache服务器容器。虽然容器已经可以运行了，但还有很多需要完善的地方。由于时间已晚，我决定改天再继续优化。果然出错了，似乎是一些必要的环境变量没有定义。尽管还有一条错误信息，但Apache似乎已经成功启动了。标签的镜像，但暂时不影响大局。，说明构建确实成功了。的文件夹，并在其中新建了一个。首先，我创建了一个名为。]]></description><category></category></item><item><title><![CDATA[Docker受限？试试Podman，手动搭建Ubuntu容器镜像]]></title><link>https://blog.youkuaiyun.com/arthurchan2021/article/details/141234593</link><guid>https://blog.youkuaiyun.com/arthurchan2021/article/details/141234593</guid><author>arthurchan2021</author><pubDate>Fri, 16 Aug 2024 00:27:03 +0800</pubDate><description><![CDATA[未来，我计划在这个基础镜像上构建更多具有具体功能的容器镜像，以满足我的开发需求。无奈之下，我决定直接在Ubuntu Base的基础上构建一个基础容器镜像，然后再在这个基础镜像上构建实际需要的功能镜像。最近，我打算用Docker来搭建一个开发环境，但遗憾的是，我发现Docker Hub无法使用，甚至国内的镜像源也无法访问。这让我有些头疼，但好在我在寻找解决方案的过程中，发现了一个Docker的替代方案：Podman。镜像成功运行，我进入了一个Ubuntu的bash环境，可以看到Ubuntu的文件系统结构。]]></description><category></category></item></channel></rss>