首页 文章 精选 留言 我的

精选列表

搜索[个人博客],共10006篇文章
优秀的个人博客,低调大师

基于dockerfile创建镜像部署WordPress博客系统

部署环境: 系统环境:CentOS 7.3内核版本:3.10.0-514.26.2.el7.x86_64Docker服务端版本:1.13.1基础镜像:centos/latest整体架构: 1、Dockerfile编写 dockerfile在我的认知范围内是指通过许多指令构建起来的一个文本,通过这个文本可以在基础镜像上再构建一个符合自身需求的镜像。 1.1 Dockerfile指令 首先,通过我们对nginx的dockerfile来讲解各个指令的用法。 FROM centos:latest MAINTAINER Bruce for WordPress RUN groupadd -g 1001 nginx && useradd -u 900 nginx -g nginx -s /sbin/nologin COPY epel.repo /etc/yum.repos.d/epel.repo RUN yum install -y nginx && yum clean all EXPOSE 80 CMD ["nginx","-g","daemon off;"] FROM:用于提供构建所需镜像的基础镜像 MAINTAILER:用于让作者提供本人信息的指令 RUN:指定docker build过程中要创建的命令,而不是容器运行时指定的指令 用法: RUN yum install -y httpd RUN ["yum","install","-y","httpd"] COPY:用于从docker主机复制文件至正在创建的镜像文件中,复制的文件必须在镜像build上下文中的路径 用法: COPY index.html /var/www/html/ COPY *.conf /etc/ ADD:和COPY用法类似,并且可以将打包压缩好的文件,解压至目标路径 CMD:和RUN命令类似,为启动容器指定默认的程序,程序运行结束,容器结束(可被docker run命令参数指定要运行的程序覆盖) 用法: CMD <command> CMD ["<executeable>","<param1>","<param2>",...] CMD ["<param1>","<param2>",...] 为ENTRYPOINT指令指定的程序提供参数 ENPOSE:指定容器要暴露的端口 用法: EXPOSE <port>[/protocol>] <port>[/protocol>] ENTRYPOINT:类似于CMD指令,不会被docker run所指定的命令行参数所覆盖,而这些命令行参数会被当做参数送给ENTRYPOINT指令指定的程序(和CMD类似) 用法: CMD <command> CMD ["<executeable>","<param1>","<param2>",...] ENV:定义环境变量,此变量可被当前dockerfie文件中的其它指令所调用 用法: ENV <key> <value> 一次定义一个变量 ENV <key>=<value> ... 一次可定义多个变量,如果value中有空白字符,要使用\字符进行转义 USER:指定运行程序时的用户名和UID 用法: USER UID | Username WORKDIR:用于为Dockerfile中所有的RUN/CMD/ENTRYPOINT/ADD指令指定工作目录 用法:WORKDIR <dirpath> VOLUME:用木目标镜像文件中创建一个挂载点,用于挂载主机上的卷或其它容器的卷 用法: VOLUME <mountpoint> VOLUME ["mountpoint",...] ONBUILD:定义触发器,当前dockrfile构建出的镜像被用作基础镜像去构建其它镜像时,ONBUILD指令指定的操作才会被执行 用法: ONBUILD <INSTRUCTION> ONBUILD ADD my.cnf /etc/mysql/my.cnf 1.2 Mysql(Dockerfile) 通过dockerfile安装部署mysql数据库,在我编写的时候遇到两个问题: 1.mysql运行在前台; 2.执行sql语句赋予账号权限和创建数据库; 通过查找一些网上资料,发现可以通过mysqld_safa将mysql运行在前台,并且将需要执行的sql语句写在sql文件中,再导入正在运行的mysql就可以了。 FROM centos:latest MAINTAINER BruceJin for mysql RUN yum install -y mariadb mariadb-server mariadb-client mariadb-devel \ WORKDIR /root ADD setup.sql /root/setup.sql ADD setup.sh /root/setup.sh ADD startup.sh /root/start.sh RUN chmod +x /root/*.sh \ && /root/setup.sh EXPOSE 3306 CMD /root/start.sh setup.sh如下: #!/bin/sh chown -R mysql:mysql /var/lib/mysql mysql_install_db --user=mysql > /dev/null mysqld_safe --user=mysql & sleep 3 mysql < /root/setup.sql sleep 3 ps -wef | grep mysql | grep -v grep | awk '{print $2}' | xargs kill -9 setup.sql如下: create database wordpress DEFAULT CHARACTER SET utf8; USE mysql; GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION; UPDATE user SET password=PASSWORD("123456") WHERE user='root'; FLUSH PRIVILEGES; 1.3 php-fpm (Dockerfile) php-fpm程序连接数据库,需要下载安装php连接mysql模块,并且需要修改默认监听和WordPress连接数据库的信息,默认是监听在127.0.0.1:9000端口上的,需要将事先配置好的文件放在本地,然后再通过COPY指令复制进去。 FROM centos:latest MAINTAINER Bruce for WordPress RUN groupadd -g 1001 nginx && useradd -u 900 nginx -g nginx -s /sbin/nologin \ && yum install -y php-fpm php-mysql && yum clean all CMD ["php-fpm","-F"] 2、创建镜像 当Dockerfile文件创建好后,需要使用docker的子命令build来创建镜像。 [root@Bruce docker]#docker build -f /root/docker/nginx.dockerfile /root/docker/ -t centos:nginx [root@Bruce docker]#docker build -f /root/docker/php.dockerfile /root/docker/ -t centos:php [root@Bruce docker]#docker build -f /root/docker/mysql.dockerfile /root/docker/ -t centos:mysql docker build有非常多的参数,-f 前面指明dockerfile所在位置,可以使用绝对路径, 后面指明build的工作目录,-t 表示给创建的镜像起的name和tag。 docker build还有非常多的参数,具体的可以参考 docker help build命令 3、启动镜像 当镜像创建好后,我们需要启动镜像,使用docker run加各种参数来启动镜像。 [root@Bruce docker]#docker run -d --name Nginx -v /root/docker/nginx/wordpress/:/usr/share/nginx/html/ -v /root/docker/nginx/nginx.conf:/etc/nginx/nginx.conf -p 80:80 centos:nginx [root@Bruce docker]#docker run -d --name php-fpm -v /root/docker/nginx/wordpress/:/usr/share/nginx/html/ -v /root/docker/php/www.conf:/etc/php-fpm.d/www.conf --net container:Nginx centos:php [root@Bruce docker]#docker run -d --name mysql -v /var/lib/mysql/ -v /root/docker/mysql/my.cnf:/etc/my.cnf -p 3306:3306 centos:mysql docker run有非常多的参数,-d表示将容器运行在后台,并打印出容器的ID, -it 组合可以使容器运行在前台, --name 可以给容器起个别名,可以通过别名来对容器做启动、停止、重启等操作, -p 表示将容器内程序的端口和容器外的端口做一个映射。 -v 表示将主机上的目录或者文件挂载到容器内,实现数据的持久化。 --net 表示指定容器的网络模型,默认的网络模型为Bridged,这里选择的是Joined模型,php与nginx共享一个网络,其余两种为Closed和Open。 docker run命令还有非常多的参数,具体可以参考 docker help run 命令。 4、测试 安装完成后,尝试打开首页: OK,这次部署终于成功。 5、总结 遇到的问题: 404报错,由于nginx和php上的web根目录理解错误导致 403报错,由于nginx上配置的目录出错,只配置了一级目录,wordpress至少有二级目录

优秀的个人博客,低调大师

Caffe & Caffe2入门博客存档

caffe2 教程入门(python版) https://www.jianshu.com/p/5c0fd1c9fef9?from=timeline caffe入门学习 https://blog.csdn.net/hjimce/article/details/48933813 运行caffe自带的两个简单例子 https://www.linuxidc.com/Linux/2016-11/136774p9.htm 关于caffe新手入门 https://blog.csdn.net/cham_3/article/details/72141753 ubuntu16.04安装caffe cpu版 https://blog.csdn.net/qq_25737169/article/details/77773884 Caffe用训练好的模型测试图片 https://blog.csdn.net/u014380165/article/details/77493943 Caffe查看网络 http://ethereon.github.io/netscope/#/editor cv2.imread()和caffe.io.loadimage的区别 https://blog.csdn.net/lovelyaiq/article/details/70254583

优秀的个人博客,低调大师

Sam Altman 的 2023 年度个人总结

Sam Altman 写了他的 2023 年度总结,题目是「我希望有人告诉我的那些事情」,总共 17 条。 1、事业的开启,源于乐观、执着、自信、根本动力和人际关系; 2、事业的完成,来自团队的凝聚力、冷静与紧迫的结合、超出想象的承诺。尽量不要在意他人的短期想法,时间越久,就越容易; 3、团队需要的是做真正重要的艰难任务,而不是无关紧要的简单任务,具有突破性的想法可以激励同伴; 4、但也要小心设计自己的激励方式,它有超能力的一面; 5、把资源集中在少数高回报的赌注上,这是知易行难的决定,你可以砍掉比你预想的还要更多的工作; 6、沟通务必清晰、简明; 7、保持反对官僚主义、反对废话连篇,更发动让身边的人一起反对,不要让组织成为妨碍效率的祸首; 8、结果永远是最重要的,在结果很糟糕时,别用过程很优秀来作借口; 9、在招聘上投入更多,把机会留给潜力大、进步快的人,除了聪明这个条件之外,还要看他们实际工作的表现; 10、明星员工的价值往往比他们看上去的更大,但评估时也要考虑到他们对于业务效能的净收益; 11、快速迭代至关重要,为此可以容忍犯错,以年为单位制定计划,以周为单位安排执行; 12、切勿对抗商业世界的物理法则; 13、灵感易逝,生命苦短,不作为是一种容易被忽视的风险; 14、规模的扩大能够带来新的机会; 15、复利有如神奇的魔法,而企业规模的扩大,就能实现复利优势; 16、赶紧站起来,继续前行; 17、与优秀的人共事是生命里最美好的体验,没有之一。 来源:https://blog.samaltman.com/ 翻译转载自:https://twitter.com/foxshuo/

优秀的个人博客,低调大师

阿里云快速搭建 WordPress 个人网站

创建服务器 登录轻量应用服务器控制台,点击页面右上方的 创建服务器。 在弹出的页面上,为列出的各选项做出选择,可同时领取阿里云优惠劵 点击 立即购买。 浏览订单详情,确认无误后,点击 去支付。 点击 确认支付。 点击 进入管理控制台,在 服务器列表中,您可以看到刚刚创建的服务器。 您的服务器状态从 准备中 变为 运行中 后,点击 详情,查看应用 概览。 快速配置 WordPress 在左侧导航栏中,点击 应用管理 > 应用详情。 在 应用详情 页面,复制 管理员密码下的命令行,单击 远程连接。 获取管理员密码:在弹出的命令窗口中,单击鼠标右键,选择 粘贴,回车。 复制管理员账号密码。 回到控制台界面,点击 管理员登录地址。 输入账号 admin,并粘贴之前复制好的密码,单击 登录。 登录成功后,您可以自由配置 WordPress。 为方便后续操作,建议您更

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册