首页
友链
关于
留言板
推荐
电脑壁纸
在线音乐
解压游戏
Search
1
【菜谱】咖喱鸡肉盖饭
3,637 阅读
2
pycharm生成requirements.txt
867 阅读
3
celery worker启动报错:AttributeError: 'str' object has no attribute 'items'
622 阅读
4
django后台管理界面美化
459 阅读
5
celery使用root用户启动报错处理
449 阅读
学习
python
linux
java
菜谱
随笔
登录
Search
标签搜索
笔记
linux
python
java
实用教程
原创
编程
多线程
docker
tomcat
thread
锁
线程同步
ssm
maven
Markdown
Windows
菜谱
生活笔记
django
Dawn
累计撰写
39
篇文章
累计收到
7
条评论
首页
栏目
学习
python
linux
java
菜谱
随笔
页面
友链
关于
留言板
推荐
电脑壁纸
在线音乐
解压游戏
搜索到
12
篇与
linux
的结果
2021-02-26
ubuntu操作系统使用docker容器搭建typecho博客详细教程
1.安装docker和docker-compose这一步不再赘述,详情参考博客文章 ubuntu安装docker和docker-compose2.需要的镜像今天笔者这里使用以下三个镜像:nginxdawn/php:7.2.3-fpmmysql:5.7(PS:笔者这样做是为了留出单独的php和nginx环境以便后续使用,如果直接使用typecho镜像会更加简单,有兴趣的可以研究一下, 这里不做赘述!)其中nginx和mysql:5.7为官方镜像,dawn/php:7.2.3-fpm是在官方的基础上添加了pdo_mysql(这样可以使用mysql作为博客的数据库)dawn/php:7.2.3-fpm的Dockerfile如下:FROM php:7.2.3-fpm LABEL maintainer="dawn" \ email="****@qq.com" \ version="7.2.3" RUN apt-get update \ && docker-php-ext-install pdo_mysql \ && echo "output_buffering = 4096" > /usr/local/etc/php/conf.d/php.ini3.配置新建blog文件夹,其目录结构如下:|--mysql //mysql持久化目录 | └──conf //mysql配置目录 | |--data //mysql数据库目录 | |--db //单独建的存放sql文件的目录 | |--logs //mysql日志目录 |--nginx //nginx 配置文件的持久化目录 | └──conf //nginx配置目录 | └──nginx.conf //nginx全局配置文件 | |--blog.conf //博客站点配置文件 | |--logs //nginx日志目录 |--ssl //SSL证书目录 |--www //php站点根目录 |--tomcat //tomcat持久化目录(博客用不到,不展开叙述) |--docker-compose.yml //docker-compose 配置文件 |--Dockerfile //Dockerfile文件 |--mysql.env //mysql配置信息3.1 配置docker-compose.ymlversion: '3' services: nginx: image: nginx:latest container_name: nginx ports: - "80:80" - "443:443" volumes: - ./www/:/var/www/html - ./ssl/:/var/www/ssl - ./nginx/blog.conf:/etc/nginx/conf.d/blog.conf - ./nginx/nginx.conf:/etc/nginx/nginx.conf - ./nginx/logs:/var/log/nginx restart: always depends_on: - fpm - mysql environment: - TZ=Asia/Shanghai fpm: build: ./ image: dawn/php:7.2.3-fpm container_name: php_fpm ports: - "9000:9000" volumes: - ./www/:/var/www/html restart: always depends_on: - mysql environment: - TZ=Asia/Shanghai mysql: image: mysql:5.7 container_name: mysql ports: - "3306:3306" volumes: - ./mysql/data:/var/lib/mysql - ./mysql/logs:/var/log/mysql - ./mysql/conf:/etc/mysql/conf.d restart: always env_file: - mysql.env其中:version 指定docker-compose版本image 指定镜像名称build 指定Dockerfile上下文目录ports 指定端口映射container_name 指定容器名字volumes 指定文件挂载映射depends_on 指定服务启动时的先后顺序,指定的服务会先于当前服务启动3.2 配置nginx全局配置文件nginx.conf,参考内容如下:user www-data; worker_processes 1; error_log /var/log/nginx/error.log warn; pid /var/run/nginx.pid; events { worker_connections 1024; } http { include /etc/nginx/mime.types; default_type application/octet-stream; log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log /var/log/nginx/access.log main; sendfile on; #tcp_nopush on; keepalive_timeout 65; #gzip on; include /etc/nginx/conf.d/*.conf; }站点配置目录blog.conf,参考内容如下:server { listen 80; server_name dawnsite.cn www.dawnsite.cn; # 更换为你的站点域名 # http重定向到https return 301 https://$host$request_uri; } server { listen 443; server_name dawnsite.cn www.dawnsite.cn; # 更换为你的站点域名 root /var/www/html/build; # 有的为/var/www/html,这里视项目情况更改 index index.php index.html index.htm; ssl on; ssl_certificate /var/www/ssl/4884437_dawnsite.cn.pem; # 更换为你的站点证书 ssl_certificate_key /var/www/ssl/4884437_dawnsite.cn.key; # 更换为你申请的私钥 ssl_session_timeout 5m; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_prefer_server_ciphers on; # 伪静态规则 if (-f $request_filename/index.html){ rewrite (.*) $1/index.html break; } if (-f $request_filename/index.php){ rewrite (.*) $1/index.php; } if (!-f $request_filename){ rewrite (.*) /index.php; } # 非www开头->www开头 更换为你的站点域名 if ($host ~ '^dawnsite.cn'){ return 301 https://www.dawnsite.cn$request_uri; } location ~ \.php$ { fastcgi_pass fpm:9000; fastcgi_index index.php; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info; fastcgi_param SCRIPT_NAME $fastcgi_script_name; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } } 3.3 配置mysqlmysql配置信息mysql.env,参考内容如下:# MySQL的root用户默认密码,这里自行更改 MYSQL_ROOT_PASSWORD=password # MySQL镜像创建时自动创建的数据库名称 MYSQL_DATABASE=typecho # MySQL镜像创建时自动创建的用户名 MYSQL_USER=user # MySQL镜像创建时自动创建的用户密码 MYSQL_PASSWORD=password # 时区 TZ=Asia/Shanghai4.安装4.1 编排容器在blog目录下执行以下命令:docker-compose up -d查看进程docker-compose ps4.2 安装typecho4.2.1 下载typecho容器编排成功后,进入blog目录下的www目录开始下载typecho操作wget http://typecho.org/downloads/1.1-17.10.30-release.tar.gz解压tar -xzvf 1.1-17.10.30-release.tar.gz解压后所有文件会在一个build文件夹内,这也就是我为什么在blog.conf中那样配置root的原因,当然你也可以把他从build移出来放到www目录下,这样blog.conf就会变成大多数人说的那样啦4.2.2 配置typecho浏览器输入域名URL,进入typecho安装页面PS:数据库地址需填入mysql镜像的名称(与docker-compose.yml中的配置相对应),数据库名与 mysql.env 中创建的数据库名一致如果出现以上界面,只需要按照提示在你的typecho软件目录下新建config.inc.php文件,并写入内容即可5.博客迁移迁移时只需要把整个blog目录打包传输至安装有docker和docker-compose的新服务器,然后重新编排即可docker-compose up -d如果是将原有博客结构升级为docker容器的话,只需要将你的typecho文件夹复制到www文件夹中,然后将你的数据库sql文件导入到新建的数据库内即可!PS:记得修改config.inc.php数据库配置和mysql.env对应噢,或者你直接把config.inc.php删掉,重新初始化一下6.参考资料通过docekr搭建typecho详细教程
2021年02月26日
215 阅读
0 评论
0 点赞
2021-02-26
tomcat服务器manager设置用户名和密码
1.找到tomcat安装目录Linux一般是在/usr/local/tomcat目录下Windows一般是自定义安装,看看你自己装到哪里了这里我用的ubuntu操作系统2.修改文件找到conf目录下的tomcat-users.xml文件关闭tomcat服务器后编辑文件,在<tomcat-users></tomcat-users>标签中加入以下一行代码:<user username="用户名" password="密码" roles="manager-gui"/>如图:3.启动,验证点击圈出来的两处可以进入管理界面,提示输入账号密码,输入即可4.可能出现的错误仍然无法访问如果已经完成上述几个操作,点击还是不能进入管理界面,说明你的tomcat版本默认不支持远程管理编辑webapps/manager/META-INF/context.xml文件来处理远程访问<?xml version="1.0" encoding="UTF-8"?> <Context antiResourceLocking="false" privileged="true" > <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> <Manager sessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFilter\$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap"/> </Context>默认只允许127.0.0.1本地访问,但是删掉<Value>标签,即可实现所有机器均可访问或者改动allow="192.168.10.112" 这代表只允许192.168.10.112这一条IP访问上传文件过大编辑webapps/manager/META-INF/web.xml文件来处理上传文件大小 <servlet> <servlet-name>HTMLManager</servlet-name> <servlet-class>org.apache.catalina.manager.HTMLManagerServlet</servlet-class> <init-param> <param-name>debug</param-name> <param-value>2</param-value> </init-param> <multipart-config> <!-- 50MB max 超过50MB则上传失败, 这里修改成500MB--> <max-file-size>524288000</max-file-size> <max-request-size>524288000</max-request-size> <file-size-threshold>0</file-size-threshold> </multipart-config> </servlet>
2021年02月26日
66 阅读
0 评论
1 点赞
2021-02-26
tomcat服务器更改默认项目
Tomcat服务器默认主页是tomcat主页,我们可以将其改为自己的项目,便于访问管理编辑Tomcat安装目录下conf/server.xml文件在<Host></Host>标签之间添加以下代码:<Context path="" docBase="你在webapps下的项目" reloadable="true" />如图:重启tomcat即可
2021年02月26日
88 阅读
0 评论
0 点赞
2021-02-26
ubuntu安装docker和docker-compose
1.前提(同步源,更新依赖)apt-get update apt upgrade2.安装dockerapt install docker apt install docker.io3.安装docker-composecurl -L "https://github.com/docker/compose/releases/download/1.25.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose如果慢也可以换一个curl -L "https://get.daocloud.io/docker/compose/releases/download/1.27.3/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose然后修改docker-compose文件夹权限chmod +x /usr/local/bin/docker-compose
2021年02月26日
395 阅读
0 评论
1 点赞
2020-11-18
记mysql在阿里云ubuntu服务器的配置过程
1. MySQL配置1.1 安装MySQLapt-get install mysql-server1.2 配置MySQL初始化配置mysql_secure_installation VALIDATE PASSWORD PLUGIN can be used to test passwords... Press y|Y for Yes, any other key for No: N (我的选项) Please set the password for root here... New password: (输入密码) Re-enter new password: (重复输入)By default, a MySQL installation has an anonymous user, allowing anyone to log into MySQL without having to have a user account created for them... Remove anonymous users? (Press y|Y for Yes, any other key for No) : N (我的选项)Normally, root should only be allowed to connect from 'localhost'. This ensures that someone cannot guess at the root password from the network... Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y (我的选项)By default, MySQL comes with a database named 'test' that anyone can access... Remove test database and access to it? (Press y|Y for Yes, any other key for No) : N (我的选项)Reloading the privilege tables will ensure that all changes made so far will take effect immediately. Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y (我的选项)检查mysql服务状态systemctl status mysql.service,显示如下图则表示没有问题1.3 配置MySQL远程访问首先编辑数据库文件vim /etc/mysql/mysql.conf.d/mysqld.cnf 注释掉bind-address = 127.0.0.1进入mysql数据库mysql -u root -p之后输入之前配置的密码即可进入之后执行以下命令use mysql select user,host from user; # 查询user表中数据 update user set host='%' where user='root'; # 修改root账号的host字段为:% # 给任意主机root账户连接mysql服务器权限: GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root的密码' WITH GRANT OPTION; flush privileges; # 刷新权限表,使配置生效 重启mysql服务sudo /etc/init.d/mysql restart如果出现1064 错误:修改加密规则:alter user '用户名'@'%' identified with mysql_native_password by '密码';刷新权限:flush privileges;重启mysql
2020年11月18日
360 阅读
2 评论
0 点赞
2020-11-18
记nginx在阿里云ubuntu服务器上的配置过程
1. Nginx配置1.1 安装Nginx首先键入apt-get update更新安装源然后键入apt-get install nginx安装nginx设置开机启动systemctl enable nginx(有的说使用标准安装默认开机自启,这里我并没有去验证)此时就可以通过ip地址访问Nginx网页,如果阿里云的域名解析已经做好,也可以使用域名访问。1.2 配置SSL证书及默认HTTPS访问如果你购买了域名并购买了SSL证书(有免费的)在ssl证书页面定位到需要下载的证书实例,根据服务器类型下载对应的文件,并解压登录阿里云服务器,进入Nginx安装目录(默认目录为/etc/nginx)创建cert目录mkdir cert使用远程登录工具(如Xshell或者MobaXterm)附带的本地文件上传功能,将下载的证书文件和密钥文件上传到Nginx服务器的cert目录下(我这里用的MobaXterm)打开Nginx默认配置文件vim /etc/nginx/sites-available/default按i建进入编辑模式,在配置文件中新增以下server代码server { listen 443 default_server; listen [::]:443 default_server; ssl on; root /usr/share/nginx/html;# 站点目录 index index.html index.htm; ssl_certificate /etc/nginx/cert/domain_name.pem; #将domain_name.pem替换成你证书的文件名称 ssl_certificate_key /etc/nginx/cert/domain_name.key;#将domain_name.key替换成你证书的密钥文件名称 ssl_session_timeout 5m; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_prefer_server_ciphers on; }修改完毕之后,按Esc键后输入:wq,然后按回车键保存文件并退出编辑模式重启Nginx服务器service nginx restart可选:设置HTTP请求自动跳转HTTPS在需要跳转的HTTP站点添加以下rewrite语句即可rewrite ^(.*)$ https://$host$1 permanent;
2020年11月18日
195 阅读
0 评论
0 点赞
2020-08-17
linux常用命令之其他命令
复习整理一下其他的常用命令不需要死记硬背,对于常用命令,用的多了,自然就记住了不要尝试一次学会很多命令,有些命令是非常不常用的,临时遇到,临时问度娘就可以了
2020年08月17日
349 阅读
0 评论
0 点赞
2020-08-17
linux常用命令之系统信息相关命令
复习整理一下系统信息常用命令不需要死记硬背,对于常用命令,用的多了,自然就记住了不要尝试一次学会很多命令,有些命令是非常不常用的,临时遇到,临时问度娘就可以了本节内容主要是为了方便通过远程终端维护服务器时,查看服务器上当前 系统日期和时间/磁盘空间占用情况/程序执行情况
2020年08月17日
133 阅读
0 评论
1 点赞
2020-08-17
linux常用命令之用户权限命令
复习整理一下用户权限常用命令不需要死记硬背,对于常用命令,用的多了,自然就记住了不要尝试一次学会很多命令,有些命令是非常不常用的,临时遇到,临时问度娘就可以了
2020年08月17日
159 阅读
0 评论
0 点赞
1
2