云服务器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
相关推荐
ManageEngineITSM7 小时前
工单分类怎么设计?类别、子类别与自动分派的实用方法
大数据·服务器·数据库·人工智能·分类·数据挖掘
CANI_PLUS8 小时前
电脑文件共享
运维·服务器
Linux界最忧郁之人8 小时前
华为云ECS&IMS&AS实战|弹性云服务器、私有镜像、弹性伸缩完整实验
linux·运维·服务器·centos·华为云·openstack
whyutianict_vv8 小时前
零基础转 AI 运维:投入清单、技术路线与核对表
linux·运维·人工智能·ai
无言听风雨丶8 小时前
systemd 与信号 / 僵尸进程:Linux 进程管理的底层逻辑与排错
linux·服务器·网络
DevOpenClub9 小时前
高考一分一段 API:分数查位次、科类枚举与历史对照
linux·数据库·高考
小贾要学习9 小时前
【C++后端开发项目】Reactor 模型 / C++ 仿写 muduo HTTP 服务器:让底层网络库真正跑起网页
linux·服务器·c++·http·网络编程·muduo·reactor模型
g5zhu58969 小时前
没有公网ip的情况下,本地能ping服务器服务器不能ping本地,让服务器能访问本地某端口的简单方法
服务器·网络协议·tcp/ip
Blockbuater_drug9 小时前
OpenMM分子动力学模拟02 安装:Linux:conda 一条命令装通 GPU 加速的分子模拟环境
linux·conda·cuda·gpu驱动·pythonpath·openmm安装
程序员JerrySUN9 小时前
PCIe Gen5 SSD 为什么读得快、写得慢?从存储原理到 Linux 性能实测
linux·服务器·网络