linux命令、docker命令

最近在做一些与部署相关的工作,整理了一些用到的linux命令;

端口命令

1、开启防火墙 
    systemctl start firewalld
   关闭防火墙
    systemctl stop firewalld

2、开放指定端口
      firewall-cmd --zone=public --add-port=8099/tcp --permanent
 命令含义:
--zone #作用域
--add-port=1935/tcp  #添加端口,格式为:端口/通讯协议
--permanent  #永久生效,没有此参数重启后失效

3、重启防火墙
      firewall-cmd --reload

4、查看端口号
netstat -ntlp   //查看当前所有tcp端口·

netstat -ntulp |grep 1935   //查看所有1935端口使用情况·

ps aux|grep xxx //查找xxx相关的进程

检查Linux系统上FTP服务是否开启:

1.通过查询提供FTP服务的进程是否存在
[root@localhost root]#ps -ef | grep ftp  
#并未找到任何包含ftp关键字的进程信息,可判断服务未开启。

2.通过查询是vsftpd服务是否存在
[root@localhost root]#service vsftpd status  
#vsftpd是最常见的FTP服务器,发现stopped状态即为关闭。

3.开启Linux上的FTP服务
[root@localhost root]# service vsftpd start
Starting vsftpd for vsftpd:                                [ OK ]
#再次查看发现已经处于启动状态:
[root@localhost root]# service vsftpd status
vsftpd (pid 4510) is running...

openoffice相关命令:

1. 临时启动:
   /opt/openoffice4/program/soffice -headless -accept="socket,host=127.0.0.1,port=8100;urp;" -nofirststartwizard &
2. 永久启动:
   nohup /opt/openoffice4/program/soffice -headless -accept="socket,host=127.0.0.1,port=8100;urp;" -nofirststartwizard &

查看是否启动成功:
 netstat -lnp|grep 8100
查看openoffice状态:
 ps -ef|grep soffice

docker—mysql

docker pull mysql:5.7

--name指定容器名字 -v目录挂载 -p指定端口映射  -e设置mysql参数 -d后台运行

docker run -p 3306:3306 --name mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:latest

# 启动所有镜像
docker start $(docker ps -a -q)
 
# stop停止所有容器
docker stop $(docker ps -a -q)
 
# remove删除所有容器
docker rm $(docker ps -a -q) 
    
docker中 删除所有的镜像
docker rmi $(docker images | awk '{print $3}' |tail -n +2)
/data/service/
#指定jdk版本启动jar包,并将日志输出到nohup.out文件中
nohup /data/soft/jdk-11/bin/java -jar test.jar &
#查找test.jar的进程号    
ps aux|grep test.jar
netstat -anp | grep 8081 

查看日志

tail
命令格式 tail [必要参数][选择参数][文件]
-f 循环读取
-v 显示详细的处理信息
-c <数目>显示字节数
-n<行数>显示行数
-q,–quiet,–slient从不输出给出文件名的首部
-s,—sleep-interval=S-f合用,表示在每次反复的间隔休眠S秒
tail -n 100 catalina.out 查询日志尾部最后100行的日志;
tail -n +100 catalina.out 查询100行之后的所有日志;
tail -fn 100 catalina.out 循环实时查看最后100行记录(最常用的)
配合着grep用,例如:tail -fn 100 catalina.out | grep – ‘关键字’
如果一次性查询的数据量太大,可以进行翻页查看,
例如:tail -n 6000 catalina.out | more -100 可以进行多屏显示(ctrl +f 或者 空格键可以快捷键)

查看端口占用

#安装lsof
yum -y install lsof
#检测端口占用
lsof -i :端口号

#安装nc
yum -y install nc
#查看对方端口是否开放
nc -vz 对方ip 对方端口

#安装telnet
yum -y install telnet
#查看对方端口是否开放
telnet 对方ip 对方端口

windows ping 端口命令:  tcping ip地址 端口号

nginx命令

nginx -s reopen #重启Nginx

nginx -s reload #重新加载Nginx配置文件,然后以优雅的方式重启Nginx

nginx -s stop #强制停止Nginx服务

nginx -s quit #优雅地停止Nginx服务(即处理完所有请求后再停止服务)

nginx -t #检测配置文件是否有语法错误,然后退出

nginx -?,-h #打开帮助信息

nginx -v #显示版本信息并退出

nginx -V #显示版本和配置选项信息,然后退出

nginx -t #检测配置文件是否有语法错误,然后退出

nginx -T #检测配置文件是否有语法错误,转储并退出

nginx -q #在检测配置文件期间屏蔽非错误信息

nginx -p prefix #设置前缀路径(默认是:/usr/share/nginx/)

nginx -c filename #设置配置文件(默认是:/etc/nginx/nginx.conf)

nginx -g directives #设置配置文件外的全局指令

killall nginx #杀死所有nginx进程

//修改nginx配置,在不能重启的情况下,可以无需重新启动Docker容器即可重新加载新配置。Nginx可以hot-reload配置而不重新启动。
//查询nginx所在容器id:docker ps -a
docker ps -a
//测试nginx配置
docker exec 容器id nginx -t 
//重新加载nginx配置
docker exec 容器id  nginx -s reload 

docker安装jenkins

前提环境
centos-release-7-9.2009Docker version 20.10.1、maven、git、jdk、maven、git、jdk

步骤
一、使用docker拉取jenkins镜像
docker search jenkins

docker pull jenkins/jenkins 

查看本地镜像

docker images

二、在宿主机创建jenkins挂载目录并授权
# 目录自定义
mkdir -p /home/local/jenkins_home
chmod 777 /home/local/jenkins_home

三、启动jenkins镜像
docker run --name myjenkins -p 9995:8080 -p 50001:50000 \
--restart=always -u root \
-v /var/run/docker.sock:/var/run/docker.sock  \
-v $(which docker):/bin/docker \
-v /usr/lib64/libltdl.so.7:/usr/lib/x86_64-linux-gnu/libltdl.so.7 \
-v /var/lib/docker/tmp:/var/lib/docker/tmp \
-v /home/local/jenkins_home:/var/jenkins_home \
-v /etc/localtime:/etc/localtime \
-v /usr/local/maven/apache-maven-3.8.6:/usr/local/maven \
-d jenkins:1.25.5

上述命令说明:
1. --restart=always #Docker重启后该容器也为随之重启
2. -u root          
    #以root的身份去运行镜像(避免在容器中调用Docker命令没有权限)
    #最好使用docker用户去运行
3. -v $(which docker):/bin/docker
    #将宿主机的docker命令挂载到容器中
    #可以使用which docker命令查看具体位置
4. -v /var/run/docker.sock:/var/run/docker.sock
	#容器中的进程可以通过它与Docker守护进程进行通信
5. -v /usr/lib64/libltdl.so.7:/usr/lib/x86_64-linux-gnu/libltdl.so.7
    #libltdl.so.7Docker命令执行所依赖的函数库
    #容器中library的默认目录是 /usr/lib/x86_64-linux-gnu/
    #把宿主机的libltdl.so.7 函数库挂载到该目录即可
    #可以通过whereis libltdl.so.7命令查看具体位置
    #centos7位置/usr/lib64/libltdl.so.7
    #ubuntu位置/usr/lib/x86_64-linux-gnu/libltdl.so.7
6. -v /home/local/jenkins_home:/var/jenkins_home
	#将运行的docker镜像目录挂载到本地的/home/local/jenkins_home目录
7. -v /usr/local/maven/apache-maven-3.8.6:/usr/local/maven
	#将本地的maven拷贝到镜像对应目录
8. -v /etc/localtime:/etc/localtime
	#保持镜像和宿主机时间一致
9. -d #后台运行镜像 
	

运行上述命令,查看jenkins容器日志,是否启动成功

docker logs -f 容器id/名称

进入镜像

docker exec -it 容器id/名称 /bin/bash

在容器中运行以下命令,如果没出错,成功一半了
docker ps 
ls

四、配置jenkins
在日志中找到密码,复制输入下一步,安装推荐的插件,直到配置完成。
后续就是全局配置,需要中文的可以下载插件,之后指定位置输入zh_CN , 切换中文


cat /home/jenkins_home/secrets/initialAdminPassword

用得到的管理员密码进行登录

安装推荐的插件即可

docker启动jenkins

docker run --name myjenkins -p 9995:8080 -p 50001:50000 \
--restart=always -u root \
-v /var/run/docker.sock:/var/run/docker.sock  \
-v $(which docker):/bin/docker \
-v /usr/lib64/libltdl.so.7:/usr/lib/x86_64-linux-gnu/libltdl.so.7 \
-v /var/lib/docker/tmp:/var/lib/docker/tmp \
-v /home/local/jenkins_home:/var/jenkins_home \
-v /etc/localtime:/etc/localtime \
-v /home/local/gradle-7.3.3:/usr/local/gradle \
-d jenkins/jenkins:latest

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值