Linux常用指令&Docker部署

Linux篇

常用命令

ls --help:查看帮助文档的命令
pwd:显示当前工作目录的路径
ifconfig:查看ip地址 (windows上面是ipconfig)
ping:检查网络是否可以连同外网,例如ping 192.168.2.10
mkdir:创建目录
touch:创建文件
rm:删除目录或文件
-r, -R, --recursive(递归)
vi和vim文本编辑器
vi 1.txt进去后,
i:插入模式
Esc:退出所有模式
wq:保存内容退出
!q:不保存内容退出
ps:列出正在运行的进程
关于修改虚拟机IP和测试网络连接,已经在另一篇写过,这里就不再讲述

  • 装好和修改好IP地址后,可以利用FinalShell进行连接,以便更好的进行操作
  • tar -zxvf xxxx.tar.gz:解压tar.gz文件
  • java -jar :解压Java项目打包成的jar文件

配置环境

一、Linux中配置jdk:
1.查看当前Linux系统中是否存在相关java安装包:
rpm -qa | grep -i java
2.如果有的话需要进行卸载:rpm -e --nodeps 要卸载的安装包名称
3.利用finalshell上传压缩包版的JDK,也就是GZ文件
4.解压缩当前JDK:
  #将压缩包中的文件和目录解压到/home目录下
	tar -zxvf jdk-8u65-linux-x64.tar.gz -C /home
#修改文件夹的名称(可改可不改)
mv /home/jdk1.8.0_65/ /home/jdk1.8
5.配置环境变量
  修改/etc/profile,设置以下内容(类似windows下的环境变量设置)
#set java environment
JAVA_HOME=/home/jdk1.8
PATH=$JAVA_HOME/bin:$PATH:.
export JAVA_HOME PATH
6.刷新配置文件并测试java命令
#刷新配置
source /etc/profile
7.查看java版本
java -version

二、Linux配置Tomcat:
1.上传tomcat9压缩包并解压到/home目录下
tar -zxvf apache-tomcat-9.0.37.tar.gz -C /home
将tomcat解压缩到/home目录下
mv /home/apache-tomcat-9.0.37/ /home/tomcat9
重命名解压的文件夹为tomcat9
2.启动tomcat9
cd /home/tomcat9/bin
进入tomcat9下的bin目录
./startup.sh
执行启动脚本
3.开放8080端口
4.访问tomcat测试 192.160.2.140:8080


三、LInux配置MYSQL
1.上传mysql安装包
2.安装mysql:
yum -y install mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql-community-server 安装mysql服务器
3.启动mysql服务
service mysqld start  启动mysql服务

service mysqld status  查看mysql服务状态

service mysqld stop 停止mysql服务

service mysqld restart  重启mysql服务

4.找出root的初始密码
grep "password" /var/log/mysqld.log


四、Linux下Redis的安装与使用:
1.以通过wget命令直接下载redis:
yum -y install wget 
wget http://download.redis.io/releases/redis-6.0.6.tar.gz
2.Redis安装:
2.1 安装gcc 9编译器
yum -y install centos-release-scl
yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils
scl enable devtoolset-9 bash
gcc --version  版本应该为9.3.1

2.2下载redis安装包解压并编译
yum -y install wget
安装wget命令
wget http://download.redis.io/releases/redis-6.0.6.tar.gz
联网将压缩包下载到当前目录下
tar -zxvf redis-6.0.6.tar.gz -C /home
解压缩到home目录下
cd /home/redis-6.0.6/
进入redis根目录
make
编译redis源码

3.redis的启动
cd /home/redis-6.0.6/src
./redis-server
启动redis服务器
当在命令行按下ctrl+C的时候,此时就会关闭redis

3.2 Redis配置
配置redis后台启动并设置连接密码
vim /home/redis-6.0.6/redis.conf
在redis.conf中找到daemonize 和 requirepass进行以下修改
修改redis配置文件
daemonize yes
后台启动
requirepass 123456
设置连接密码为123456

启动redis
./redis-server /home/redis-6.0.6/redis.conf
需要让其根据配置文件启动
netstat -anp|grep 6379
查看6379端口占用情况
停止redis服务
./redis-cli shutdown

命令行连接Redis:
./redis-cli -h 127.0.0.1 -p 6379 -a 123456
-h代表连接的主机
-p代表连接的端口号
-a代表密码
或者
./redis-cli -a 123456


五、Linux下Git的安装:
#采用压缩包的方式进行安装
1.# 安装编译依赖
yum install -y curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker

2.#获取git压缩包
wget https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.28.0.tar.gz

3.#解压缩到/home
tar -zxvf git-2.28.0.tar.gz -C /home

4.#进入git根目录
cd /home/git-2.28.0

5.#编译git源码并安装到/usr/local下
make prefix=/usr/local/git all
make prefix=/usr/local/git install

6.#删除旧版本git
yum -y remove git

7.#添加到环境变量
vim /etc/profile
#对末尾的环境变量进行修改,添加git命令目录
JAVA_HOME=/home/jdk1.8
GIT_HOME=/usr/local/git
export PATH=$GIT_HOME/bin:$JAVA_HOME/bin:$PATH:.

8.#刷新环境变量
source /etc/profile

9.#查看版本号
git --version

Docker篇

docker概述

  • Docker 是一个开源项目,诞生于 2013 年初,最初是 dotCloud 公司内部的一个业余项目。它基于Google 公司推出的 Go 语言实现。 项目后来加入了 Linux 基金会,遵从了 Apache 2.0 协议,项目代码 在 GitHub 上进行维护。
  • Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows 机器上,也可以实现虚拟化。容器是完全使用沙箱机制, 相互之间不会有任何接口
    在这里插入图片描述
  • Docker创建的所有虚拟实例共用同一个Linux内核,对硬件占用较小,属于轻量级虚拟机
  • 镜像(Image):Docker 镜像(Image),就相当于是一个 root 文件系统。比如官方镜像ubuntu:16.04 就包含了完整的一套 Ubuntu16.04 最小系统的 root 文件系统。
  • 容器(Container):镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中 的类和实例一样,镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、 删除、暂停等。
  • 仓库(Repository):仓库可看成一个代码控制中心,用来保存镜像。
  • 经常就是拉取镜像,创建容器,进入容器,启动容器;或者是后台启动(-itd)

docker和VM的区别

  • Docker守护进程可以直接与主操作系统进行通信,为各个Docker容器分配资源;它还可以将容器 与主操作系统隔离,并将各个容器互相隔离。虚拟机启动需要数分钟,而Docker容器可以在数毫 秒内启动。由于没有臃肿的从操作系统,Docker可以节省大量的磁盘空间以及其他系统资源。

安装&启动

更新系统包管理器和安装一些必要的工具:
sudo yum update
sudo yum install -y yum-utils device-mapper-persistent-data lvm2

添加 Docker 软件仓库:
sudo yum-config-manager --add-repo
https://download.docker.com/linux/centos/docker-ce.repo

安装 Docker:
sudo yum install docker-ce

启动 Docker 服务并设置它在启动时自动启动:
sudo systemctl start docker
sudo systemctl enable docker

验证 Docker 安装:
docker -v

常用docker命令

#启动docker
systemctl start docker
#停止docker
systemctl stop docker
#重启docker
systemctl restart docker
#查看docker当前状态
systemctl status docker

#拉取镜像
docker pull name[:tag]
docker pull hello-world
#查看当前本地所有镜像
docker images
#搜索镜像,支持模糊匹配
docker search 镜像名称
docker search mysql
#删除镜像
docker rmi 镜像名称/镜像id

关于容器的命令

docker run -it --name myjava java bash
run:创建并且启动一个容器
it:启动容器后开启一个交互的界面
name:给容器定义名称
java:镜像的名称
bash:要在容器中运行的程序

端口映射:
docker run -it --name myjava -p 9000:8080 -p 9001:8085 java bash
把容器的8080端口映射在宿主机的9000端口上
把容器的8085端口映射在宿主机的9001端口上

docker run -it --name myjava -v /home/project:/soft --privileged java bash
把宿主机的/home/project目录映射到容器的/soft目录
-- privileged:表示docker在操作的时候是拥有读写宿主机目录权限的

====================================================================

拉取官方hello-world镜像
docker pull hello-world
#基于helloworld镜像启动一个容器
docker run hello-world
#拉取官方的ubuntu 16.04镜像
docker pull ubuntu:16.04
#以ubuntu镜像(也可以使用镜像id)启动一个名称为ubuntu-16.04的容器
docker run -it --name=ubuntu-16.04 ubuntu:16.04
#从容器内部退出,回到宿主机,此时容器也会被停止
exit
#以后台方式启动docker容器
docker run -itd --name=ubuntu-16.04-02 4b22027ede29
#在容器启动后还想再进入容器内部操作
docker exec -it ubuntu-16.04-02 /bin/bash

#查看所有启动的容器
docker ps
#查看所有容器(启动+未启动)
docker ps -a

#停止一个或多个容器
docker stop 容器名称/容器ID [容器名称/容器ID]...
#启动一个或多个已经停止的容器
docker start 容器名称/容器ID [容器名称/容器ID]...
#重启一个或多个容器
docker restart 容器名称/容器ID [容器名称/容器ID]...
#删除一个容器
docker rm 容器名称/容器ID
例如:docker rm 41291468f6e5
#删除所有已经停止的容器,运行中的容器不能删除
docker rm $(docker ps -a -q)

#查看所有镜像
docker images

#在宿主机挂载一个目录作为宿主机和容器共享文件的目录
#宿主机目录:容器目录
docker run -itd --name=ubuntu-02 -v /home/share:/home/share ubuntu:16.04

防火墙&开放端口命令

firewall-cmd --zone=public --add-port=6379/tcp --permanent  开放6379端口
--zone=public:表示作用域为公共的
--add-port=8080/tcp:添加tcp协议的端口8080
--permanent:永久生效,如果没有此参数,则只能维持当前服务生命周期内,重新启动后效;

systemctl restart firewalld.service  重新加载
firewall-cmd --reload    重启防火墙
netstat -anp|grep 6379  查看端口占用情况
firewall-cmd --state     查看防火墙状态
 systemctl restart firewalld.service    启动防火墙
systemctl stop firewalld 关闭防火墙
sudo kill -9 15666   杀死进程 15666:进程ID

配置开发环境

Docker中的部署:
sudo systemctl restart docker 重启docker

一、Docker安装&启动:
更新系统包管理器和安装一些必要的工具:
sudo yum update
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
添加 Docker 软件仓库:
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

安装 Docker:
sudo yum install docker-ce
启动 Docker 服务并设置它在启动时自动启动:
sudo systemctl start docker
sudo systemctl enable docker
验证 Docker 安装:
docker -v

二、docker中jdk部署:
docker search java
#拉取镜像
docker pull java:8
#使用镜像创建一个容器
docker run -itd --name=jdk8 d23bdf5b1b1b
#在容器内部使用
java -version

三、docker中部署Tomcat:
1.拉取tomcat
docker pull tomcat

2.#启动一个tomcat容器,并且映射端口(宿主机端口:容器端口)
docker run -itd -p 8083:8080 --name=tomcat9 tomcat:latest

3.#进入容器的tomcat目录,将webapps.dist 下的文件复制到 webapps下

#这样才能访问主页
docker exec -it tomcat9 /bin/bash
cp webapps.dist/ webapps

4.#宿主机开放8083端口
sudo firewall-cmd --zone=public --add-port=8083/tcp --permanent
sudo systemctl restart firewalld.service
sudo firewall-cmd --reload

四、Docker部署Mysql(单节点部署)
#拉取mysql
docker pull mysql:5.7.31
#启动mysql,通过-e指定root用户密码,使用navicat连接测试
docker run -itd --name=mysql-5.7.31 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root
mysql:5.7.31

五、docker中部署Redis(单机部署):
#拉取redis
docker pull redis
docker pull redis:4.0.14
#启动redis容器,并且映射目录
docker run -itd --name=redis4 -p 6379:6379 -v /home/share/redis/:/etc/redis/
redis:4.0.14 --requirepass 123456
#上传redis配置文件到宿主机的/home/share/redis/下
#进入redis4容器
docker exec -it redis4 /bin/bash
#redis加载redis.conf启动
cd /usr/local/bin
./redis-server /etc/redis/redis.conf

六、docker中部署RabbitMQ
#拉取RabbitMQ镜像
docker pull rabbitmq:management
#启动rabbitmq容器
docker run -itd -p 5672:5672 -p 15672:15672 --name rabbitmq rabbitmq:management
#开放567215672端口
sudo firewall-cmd --zone=public --add-port=5672/tcp --permanent
sudo firewall-cmd --zone=public --add-port=15672/tcp --permanent
sudo systemctl restart firewalld.service
sudo firewall-cmd --reload
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值