云服务器linux系统安装配置docker

在我们拿到一个纯净的linux系统时,我需要进行一些基础环境的配置

(如果是云服务器可以用XShell远程连接,如果连接不上可能是服务器没开放22端口)

下面是配置环境的步骤

bash 复制代码
sudo -s进入root权限:退出使用exit
sudo -i进入后退出使用logout

## 防火墙
iptables -F #清空现有规则
getenforce 

systemctl disable firewalld  #关闭防火墙自启
systemctl stop firewalld     #关闭防火墙

# 配置yum源
wget -O /etc/yum,repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

#清缓存
yum clean all 
# 生成缓存
yum makecache 
# 装依赖
yum install -y bash-completion vim lrzsz wget expect net-tools nc nmap tree dos2unix htop iftop iotop unzip telnet sl psmisc nethogs glances bc ntpdate openldap-devel

#开启linux内核的流量转发
cat <<EOF > /etc/sysctl.d/docker.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.conf.default.rp_filter = 0
net.ipv4.ip_forward = 1
EOF

#加载修改内核的参数,配置文件
sysctl -p /etc/sysctl.d/docker.conf

## 加载配置报错 no such file 则
modprobe br_netfilter

####### 利用yum快速安装docker #######

## 下载阿里源repo文件
curl -o /etc/yum.repos.d/Centos-7.repo http://mirrors.aliyun.com/repo/Centos-7.repo

# 清楚并更新yum缓存
yum clean all && yum makecache

## yum安装
yum install docker-ce-20.10.6 -y
## 查看源中可用版本
yum list docker-ce --showduplicates | sort -r
## 卸载
yum remove -y docker-xxx

##### 配置镜像源 #######
mkdir -p /etc/docker #创建文件夹
touch /etc/docker/daemon.json #创建文件

vim /etc/docker/daemon.json #打开配置文件 按i进行插入模式
{
  "registry-mirrors" : [
       "https://8xpk5wnt.mirror.aliyuncs.com" 
   ]
}
# :wq! 强制保存退出

# 查看文件内容
cat /etc/docker/daemon.json

## 设置开机自启docker
systemctl daemon-reload #重新读一遍配置文件
systemctl enable docker
systemctl restart docker

ps -ef | grep docker 

## ps -ef:这部分命令用于显示当前系统上所有进程的详细信息。具体来说,它会列出进程的用户、进程ID(PID)、CPU使用情况、内存使用情况等。
## |:这是管道符号,用于将一个命令的输出传递给另一个命令作为输入。
## grep docker:这部分命令用于过滤前一个命令的输出,只显示包含 "docker" 字符串的行。这通常用于查找与 Docker 相关的进程。

一些基础docker指令

bash 复制代码
##### docker 命令 #####
docker version 

## 示例
docker search nginx
docker image ls #等同于docker images  查看本地镜像
docker rmi  镜像id #删除镜像 
docker pull nginx #拉取下载镜像

# -d 后台运行容器
# -p 80:80 端口映射   宿主机端口:容器内端口   访问宿主机端口等同于访问容器内端口
docker run -d -p 80:80 nginx #运行完成后返回容器id
# -i 交互式命令操作 -t 开启一个终端 bash进入容器后执行的命令
docker run -it 容器id bash
# 进入到正在运行的容器内
docker exec -it 容器id bash
exit #退出容器空间

netstat -tunlp #用于显示网络统计信息的命令。
-t: 该选项用于显示TCP协议的相关信息,包括TCP连接和监听端口。
-u: 这个选项用于显示UDP协议的相关信息,包括UDP连接和监听端口。
-n: 该选项指示 netstat 显示数字形式的IP地址和端口号,而不是尝试解析主机名或服务名称。
-l: 该选项表示仅显示监听(listening)的端口。
-p: 这个选项用于显示与每个网络连接或监听端口相关联的进程信息(进程ID)。

docker ps #查看运行容器
docker stop 容器id #停止容器

防火墙问题(外网想要访问服务器上的项目需要云服务器的安全组和服务器同时开放端口)

bash 复制代码
开放端口:firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --zone=docker --add-port=9999/tcp --permanent
重启防火墙:systemctl restart firewalld.service
查看已开启的端口信息 firewall-cmd --list-ports
查看防火墙状态,running代表正在运行:firewall-cmd --state
停止命令systemctl stop firewalld.service
启动命令systemctl start firewalld.service
相关推荐
山河君1 分钟前
ubuntu使用DeepSpeech进行语音识别(包含交叉编译)
linux·ubuntu·语音识别
鹏大师运维5 分钟前
【功能介绍】信创终端系统上各WPS版本的授权差异
linux·wps·授权·麒麟·国产操作系统·1024程序员节·统信uos
筱源源7 分钟前
Elasticsearch-linux环境部署
linux·elasticsearch
川石课堂软件测试21 分钟前
性能测试|docker容器下搭建JMeter+Grafana+Influxdb监控可视化平台
运维·javascript·深度学习·jmeter·docker·容器·grafana
龙哥说跨境29 分钟前
如何利用指纹浏览器爬虫绕过Cloudflare的防护?
服务器·网络·python·网络爬虫
pk_xz1234562 小时前
Shell 脚本中变量和字符串的入门介绍
linux·运维·服务器
小珑也要变强2 小时前
Linux之sed命令详解
linux·运维·服务器
海绵波波1072 小时前
Webserver(4.3)TCP通信实现
服务器·网络·tcp/ip
九河云4 小时前
AWS账号注册费用详解:新用户是否需要付费?
服务器·云计算·aws
Lary_Rock4 小时前
RK3576 LINUX RKNN SDK 测试
linux·运维·服务器