docker export 24e6c4e56d39 > standalone-chrome.tar
docker export 24e6c4e56d39 > standalone-chrome.tar
docker selenium+chrome
selenium+chrome镜像
通过docker search selenium我们发现,有一个docker镜像叫做selenium/standalone-chrome。看名字应该是包含了selenium和chrome,按照之前的方式我们是在本机上直接调用webdriver控制chrome,而在虚拟机上我们可以使用远程调用。先翻一下官方文档,发现有两种启动方式:
$ docker run -d -p 4444:4444 -v /dev/shm:/dev/shm selenium/standalone-chrome:3.141.59-dubnium#OR
docker run -d -p 4444:4444 -p 5900:5900 –shm-size=2g selenium/standalone-chrome:latest
docker run -d -p 4444:4444 -p 5900:5900 –shm-size=2g selenium/standalone-chrome:3
这里看到镜像名称后面有标签,如果pull的是latest版本的话那么可以忽略。
docker 创建桥接网络
docker network create –driver bridge –subnet 172.20.0.0/24 –gateway 172.20.0.1 blade_net
docker network create –driver bridge –subnet 172.29.0.0/24 –gateway 172.29.0.1 blade_net
docker network create –driver bridge –subnet 192.168.33.0/24 –gateway 192.168.33.1 mine_net
docker 服务 离线安装
1、去官网下载docker 安装二进制包,选择适合自己的版本。这里下载的是docker-19.03.9.tgz,在centos7中安装(cento6无法使用,提示linux版本内核版本太低)
下载地址:https://download.docker.com/linux/static/stable/x86_64/
2、复制docker-19.03.9.tgz到服务器上,解压:tar xzvf docker-19.03.9.tgz
3、进入docker目录复制所有文件到/usr/bin目录下,目的/user/bin是环境变量目录,在路径下都可以运行docker命令
ls -l dockercp docker/* /usr/bin/[root@localhost local]# tar xvf docker-19.03.9.tgzdocker/docker/docker-initdocker/runcdocker/dockerdocker/docker-proxydocker/containerddocker/ctrdocker/dockerddocker/containerd-shim[r ...
docker-compose: 未找到命令
docker-compose: 未找到命令docker-compose: 未找到命令
安装docker-compose
1.从github上下载docker-compose二进制文件安装
安装docker-compose1.从github上下载docker-compose二进制文件安装``sudo curl -L https://github.com/docker/compose/releases/download/1.16.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose``
若是github访问太慢,可以用daocloud下载,下载文件到/usr/local/bin/docker-compose文件夹下:
``sudo curl -L https://get.daocloud.io/docker/compose/releases/download/1.25.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/dock ...
docker根据镜像名来删除容器
docker根据镜像名来删除容器`docker rm $(docker ps -q --filter ancestor=image-name)`
$符包围的是根据镜像查询的容器的id。在$中,-q表示只显示容器id。--filter表示根据条件筛选,ancestor=image-name表示选择镜像名为image-name的容器。
例如,我们这里有一个名为registry.cn-hangzhou.aliyuncs.com/flowertree/transformer的镜像,我们可以这样强行删除它,无论它是否运行。
`docker rm $(docker ps -q --filter ancestor=registry.cn-hangzhou.aliyuncs.com/flowertree/transformer)`
k8s部署jar包_利用Kubernetes(K8S)部署JAVA项目
k8s部署jar包_利用Kubernetes(K8S)部署JAVA项目一、jar包和war包区别
首先简单介绍一下jar包和war包区别,当时就没分清,导致部署总是傻傻分不清楚.
jar包:jar包就是java的类进行编译生成的class文件就行打包的压缩包。里面是一些class文件。当我们自己使用maven写一些java程序,进行打包生成jar包。同时在可以在其他的工程下使用,但是我们在这个工程依赖的jar包,在其他工程使用该jar包也要导入。
war包:其实就是一个web程序进行打包便于部署的压缩包,里面包含我们web程序需要的一些东西,其中包括web.xml的配置文件,前端的页面文件,以及依赖的jar。文件数量对于jar包,这样便于我们部署工程,直接放到tomcat的webapps目录下,直接启动tomcat即可。同时可以使用WinRAR查看war包,直接将后缀.war改成.rar
二、创建JAVA项目,并打包成jar包
我的目录结构
这里是利用SpringBoot写的一个小DEMO,不熟悉的,可以去看入门视频
三、创建Dockerfile文件
我看了这篇文章作为参考,但COP ...
Commons-net FTPClient completePendingCommand()经常使程序死掉的原因分析以及解决方式_清风一池水的博客-CSDN博客
Commons-net FTPClient completePendingCommand()经常使程序死掉的原因分析以及解决方式commons-net的FTPClient,在使用public InputStream retrieveFileStream(String remote)
方法时需要特别注意,在调用这个接口后,一定要手动close掉返回的InputStream,然后再调用completePendingCommand方法,若不是按照这个顺序,则不对,伪代码:
InputStream is = ftpClient.retrieveFileStream(remote);is.close();ftpClient.completePendingCommand();
retrieveFileStream的API文档说的有点罗嗦,还可以使用下列方法来替换上述使用方式
使用一个中间文件来做一个转接,这种方式比上述方法的好处就是自己容易控制,不容易出问题。伪代码如下:
File localFile = new File(localPath, localFileName);OutputSt ...
FTP 日志配置及查看
vsftpd
ftp服务器的日志设置,可以通过修改主配置文件/etc/vsftpd.conf实现。主配置文件中与日志设置有关的选项包括xferlog_enable 、xferlog_file 和dual_log_enable 等。xferlog_enable如果启用该选项,系统将会维护记录服务器上传和下载情况的日志文件。默认情况下,该日志文件为 /var/log/vsftpd.log。但也可以通过配置文件中的 vsftpd_log_file 选项来指定其他文件。默认值为NO。xferlog_std_format如果启用该选项,传输日志文件将以标准 xferlog 的格式书写,该格式的日志文件默认为 /var/log/xferlog,也可以通过 xferlog_file 选项对其进行设定。默认值为NO。dual_log_enable如果启用该选项,将生成两个相似的日志文件,默认在 /var/log/xferlog 和 /var/log/vsftpd.log 目录下。前者是 wu-ftpd 类型的传输日志,可以利用标准日志工具对其进行分析;后者是Vsftpd类型的日志。syslog_ena ...
Ftp主动模式和被动模式以及java连接ftp模式设置
Ftp主动模式和被动模式以及java连接ftp模式设置(1) PORT(主动模式)
PORT中文称为主动模式,工作的原理: FTP客户端连接到FTP服务器的21端口,发送用户名和密码登录,登录成功后要list列表或者读取数据时,客户端随机开放一个端口(1024以上),发送 PORT命令到FTP服务器,告诉服务器客户端采用主动模式并开放端口;FTP服务器收到PORT主动模式命令和端口号后,通过服务器的20端口和客户端开放的端口连接,发送数据,原理如下图。
(2) PASV(被动模式)
PASV是Passive的缩写,中文成为被动模式,工作原理:FTP客户端连接到FTP服务器的21端口,发送用户名和密码登录,登录成功后要list列表或者读取数据时,发送PASV命令到FTP服务器, 服务器在本地随机开放一个端口(1024以上),然后把开放的端口告诉客户端, 客户端再连接到服务器开放的端口进行数据传输,原理如下图:
2.两种模式的比较
从上面的运行原来看到,主动模式和被动模式的不同简单概述为: 主动模式传送数据时是“服务器”连接到“客户端”的端口;被动模式传送数据是 ...
Linux FTP服务搭建
【1】安装vsftpd使用静默模式直接安装
`yum -y install vsftpd`
【2】新增FTP用户默认仅允许用户使用FTP,不允许登录系统;如要允许登录请使用“ usermod”命令。
`useradd -d /home/ftp ftp_user # 增加用户ftp_user,并指定用户的主目录为/home/ftpusermod -s /bin/bash ftp_user # 恢复用户ftp_user的ssh登录权限`
【3】设置用户登录密码执行命令后根据提示输入两次密码即可完成设置。
`passwd ftp_user`
【4】修改配置文件,变更用户权限
`vi /etc/vsftpd/vsftpd.conf`
`chroot_local_use=NO # 禁用 将用户目录限制在主目录(即不允许用户切换到上层目录)的功能chroot_list_enable=YES # 开启“限制例外”功能,即chroot_list_file指定的文件中的用户列表被排除 ...
Linux离线一键安装ftp服务shell脚本
Linux离线一键安装ftp服务shell脚本1、提前准备好离线rpm包
2、在rpm包相同路径下新建sh脚本文件
vi install_ftp.sh
# /bin/bash# Version : 0.1# License : (C)Copyright 2021-2021, MIT# Desc : NoneARRRY=($(ip addr | awk '/^[0-9]+: / {}; /inet.*global/ {print gensub(/(.*)\/(.*)/, "\\1", "g", $2)}'))echo "************************************************"read -p "请输入新建ftp用户名:" usernameread -p "请输入新建ftp密码:" pwdread -p "请输入ftp文件放置路径(如:/opt/ftp):" pathrpm ...
ftp服务器搭建(离线安装vsftpd)
ftp服务器搭建(离线安装vsftpd),配置1.下载vsftp:http://rpmfind.net/linux/rpm2html/search.php?query=vsftpd(x86-64)
2.检查是否已经安装了vsftp
rpm -qa | grep vsftpd 如果没有提示则说明没有安装 如果提示版本号则说明已经安装
3.安装vsftpd-3.0.2-22.el7.x86_64.rpm
离线安装rpm -ivh vsftpd-3.0.2-22.el7.x86_64.rpm 在线安装yum install -y vsftp安装过程可能会报错:
[root@yjy-pt01 vsftpd]# rpm -ivh vsftpd-3.0.2-22.el7.x86_64.rpm warning: vsftpd-3.0.2-22.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID f4a80eb5: NOKEY error: Failed dependencies: libc.so.6(GLIBC_2.14)(64bit ...
使VSFTPD Ftp Server同时支持IPv4和IPv6网络 - 问剑杂谈
问剑杂谈关注互联网和云计算的IT科技博客
首页
互联网
免费资源
随笔文章
WordPress
关于我
友情链接
RSS
使VSFTPD Ftp Server同时支持IPv4和IPv6网络2014-10-10
虽然VSFTPD Ftp Server本身支持IPv6网络,而且在配置文件(/etc/vsftpd/vsftpd.conf)中就有一个“#listen_ipv6=YES”选项,但是默认情况下IPv6服务是不生效的。在实际应用中,如果我们想让VSFTPD同时支持IPv4和IPv6,似乎只要把“#listen_ipv6=YES”取消注释、然后重启VSFTPD服务就OK了。不过我在实际操作中发现,如果只是简单地取消掉“listen_ipv6=YES”的注释,重启服务时会提示VSFTPD在IPv4和IPv6网络下同时运行产生冲突,错误信息如下:
500 OOPS: run two copies of vsftpd for IPv4 and IPv6
这可咋办,难道VSFTPD不能同时在IPv4和IPv6网络下运行吗?我经过查资料后发现,根本不是这样,VSFTPD可以同时运行在IP ...
Github Action 部署博客到阿里云OSS - 简书
登录注册写文章
首页下载APP会员IT技术
Github Action 部署博客到阿里云OSS满远荣
Github Action 部署博客到阿里云OSS
满远荣
12019.10.25 20:25:07字数 1,253阅读 4,024
部署博客有很多选择,国内外都有很多服务可以用,各有各的优缺点:
GithubPages
码云Pages
Netlify
Heroku
阿里云OSS
纯静态托管
是
是
是
否👍
是
CDN加速
否
否
是👍
否
是👍
访问速度
慢
快👍
一般
一般
很快👍
支持404重定向
否
是👍
是👍
是👍
是👍
自定义重定向
否
否
是👍
是👍
否
具体选择哪个,根据个人对博客的诉求进行选择。
访问速度快:优先选择阿里云(国内CDN加速)、其次是码云(国内服务器)
功能最强:选择Heroku,支持Node.js、PHP等后端
本文章要讲的是如何用 GitHub + Github Action + 阿里云OSS 部署博客因为静态博客系统有很多选择,Jekyll、Hugo、Hexo等。这里选择Hexo
Gi ...