云计算实训34——docker环境配置、镜像基本操作、容器基本操作、设置远程连接管理

本文主要是介绍云计算实训34——docker环境配置、镜像基本操作、容器基本操作、设置远程连接管理,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、配置docker环境

写入模块

[root@docker ~]# cat << EOF | tee /etc/modules-load.d/k8s.conf
> overlay
> br_netfilter
> EOF

加载模块

#内核模块
[root@docker ~]# modprobe overlay
#桥接模块
[root@docker ~]# modprobe br_netfilter

#查看所添加的模块

[root@docker ~]# cat /etc/modules-load.d/k8s.conf 
overlay
br_netfilter

写入模块

#cat命令用于输出重定向,tee命令用于同时在屏幕上显示输出内容和写入文件。 [root@docker ~]# cat << EOF | tee /etc/sysctl.d/k8s.confnet.bridge.bridge-nf-call-iptables = 1
net.bridge.bridge-nf-call-ip6tables = 1
net.ipv4.ip_forward = 1
EOF

重新加载

[root@docker ~]# sysctl --system


安装软件包

#安装yum-utils、device-mapper-persistent-data、lvm2(逻辑管理工具)[root@docker ~]# yum  -y install yum-utils device-mapper-persistent-data lvm2#重置配置,添加新仓库——阿里云
[root@docker ~]# yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo#安装docker[root@docker ~]# yum  -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin #启动docker
[root@docker ~]# systemctl start docker.service

二、镜像基本操作

查看镜像

[root@docker ~]# docker images 


搜索镜像

#查找tomcat镜像[root@docker ~]# docker search tomcat#查找nginx镜像[root@docker ~]# docker search nginx#查找官方镜像[root@docker ~]# docker search centos

设置阿里云镜像加速器

#配置docker镜像站[root@docker ~]# vim /etc/docker/daemon.json{"registry-mirrors": ["https://do.nark.eu.org","https://dc.j8.work","https://docker.m.daocloud.io","https://dockerproxy.com","https://docker.mirrors.ustc.edu.cn","https://docker.nju.edu.cn"]
}#重启docker[root@docker ~]# systemctl restart docker.service

下载镜像

#下载官方镜像[root@docker ~]# docker pull centos#查看镜像
[root@docker ~]# docker images
REPOSITORY   TAG       IMAGE ID       CREATED       SIZE
centos       latest    5d0da3dc9764   2 years ago   231MB

三、容器基本操作

启动容器

[root@docker ~]# docker run -i -t --name=c0 centos:latest /bin/bash

删除原有yum源

[root@5fa71e17b009 ~]# rm -rf /etc/yum.repos.d/*

下载阿里云镜像

[root@5fa71e17b009 ~]# curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo% Total    % Received % Xferd  Average Speed   Time    Time     Time  CurrentDload  Upload   Total   Spent    Left  Speed
100  2495  100  2495    0     0  26827      0 --:--:-- --:--:-- --:--:-- 26827

清理缓存

[root@5fa71e17b009 ~]# yum clean all

创建缓存

[root@5fa71e17b009 ~]# yum makecache

安装软件包

#安装httpd包
[root@5fa71e17b009 ~]# yum -y install httpd
#安装iproute包
[root@5fa71e17b009 ~]# yum -y install iproute
#安装net-tools包
[root@5fa71e17b009 ~]# yum -y install net-tools

查看系统运行时间

[root@5fa71e17b009 ~]# uptime06:35:26 up  3:56,  0 users,  load average: 0.14, 0.05, 0.06

查看当前所在目录

[root@5fa71e17b009 ~]# pwd
/root

查看red-hat的版本信息

[root@5fa71e17b009 ~]# cat /etc/redhat-release 
CentOS Linux release 8.4.2105

写入内容

[root@5fa71e17b009 ~]# echo "docker_httpd_server" > /var/www/html/index.html#启动httpd
[root@5fa71e17b009 ~]# httpd -k start

访问测试

#自身访问
[root@5fa71e17b009 ~]# curl http://localhost:80
docker_httpd_server
#查看ip
[root@5fa71e17b009 ~]# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500inet 172.17.0.2  netmask 255.255.0.0  broadcast 172.17.255.255
#在宿主机上访问   
[root@docker ~]# curl http://172.17.0.2:80
docker_httpd_server

查看进程

[root@docker ~]# ps -aux | grep docker
root       4733  0.0  5.9 1636248 58996 ?       Ssl  14:16   0:01 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
root       4937  0.0  1.9 1518968 19716 pts/1   Sl+  14:19   0:00 docker run -i -t --name=c0 centos:latest /bin/bash
root       5432  0.0  0.0 112720   984 pts/2    S+   15:03   0:00 grep --color=auto docker

退出容器

[root@5fa71e17b009 ~]# exit

退出后进程已不存在,需要再次启动

#启动名为C0的容器
[root@docker ~]# docker start c0#将c0的终端附加到当前终端
[root@docker ~]# docker attach c0#启动httpd
[root@5fa71e17b009 /]# httpd -k start#再次测试
#自身访问正常
[root@5fa71e17b009 /]# curl localhost
docker_httpd_server#宿主机上访问正常
[root@docker ~]# curl http://172.17.0.2:80
docker_httpd_server#按ctrl+先p后q,也可以退出回到宿主机[root@5fa71e17b009 /]# read escape sequence

四、设置远程连接管理

查看状态

#查看sock套接字文件[root@docker ~]# ls -lh /var/run/srw-rw----  1 root   docker    0 8月  22 11:22 docker.sock#查看端口是否开启[root@docker ~]# netstat -lnput | grep 2375注:要实现远程连接,必须有sock套接字文件、端口必须开启

停用docker

[root@docker ~]# systemctl stop docker

修改配置文件

#进入配置文件

[root@docker ~]# vim /usr/lib/systemd/system/docker.service

#修改json文件

[root@docker ~]# vim /etc/docker/daemon.json

加载文件

[root@docker ~]# systemctl daemon-reload

启动docker

[root@docker ~]# systemctl start docker

再次查看状态

#查看端口状态

[root@docker ~]# netstat -lnput | grep 2375
tcp6       0      0 :::2375                 :::*                    LISTEN      6394/dockerd

#查看sock套接字文件      
[root@docker ~]# ls -lh /var/run/

srw-rw----  1 root   docker    0 8月  22 16:10 docker.sock

这篇关于云计算实训34——docker环境配置、镜像基本操作、容器基本操作、设置远程连接管理的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1098145

相关文章

mybatis映射器配置小结

《mybatis映射器配置小结》本文详解MyBatis映射器配置,重点讲解字段映射的三种解决方案(别名、自动驼峰映射、resultMap),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定... 目录select中字段的映射问题使用SQL语句中的别名功能使用mapUnderscoreToCame

Linux下MySQL数据库定时备份脚本与Crontab配置教学

《Linux下MySQL数据库定时备份脚本与Crontab配置教学》在生产环境中,数据库是核心资产之一,定期备份数据库可以有效防止意外数据丢失,本文将分享一份MySQL定时备份脚本,并讲解如何通过cr... 目录备份脚本详解脚本功能说明授权与可执行权限使用 Crontab 定时执行编辑 Crontab添加定

Java使用jar命令配置服务器端口的完整指南

《Java使用jar命令配置服务器端口的完整指南》本文将详细介绍如何使用java-jar命令启动应用,并重点讲解如何配置服务器端口,同时提供一个实用的Web工具来简化这一过程,希望对大家有所帮助... 目录1. Java Jar文件简介1.1 什么是Jar文件1.2 创建可执行Jar文件2. 使用java

Python实现精确小数计算的完全指南

《Python实现精确小数计算的完全指南》在金融计算、科学实验和工程领域,浮点数精度问题一直是开发者面临的重大挑战,本文将深入解析Python精确小数计算技术体系,感兴趣的小伙伴可以了解一下... 目录引言:小数精度问题的核心挑战一、浮点数精度问题分析1.1 浮点数精度陷阱1.2 浮点数误差来源二、基础解决

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

Vite 打包目录结构自定义配置小结

《Vite打包目录结构自定义配置小结》在Vite工程开发中,默认打包后的dist目录资源常集中在asset目录下,不利于资源管理,本文基于Rollup配置原理,本文就来介绍一下通过Vite配置自定义... 目录一、实现原理二、具体配置步骤1. 基础配置文件2. 配置说明(1)js 资源分离(2)非 JS 资

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

Java实现远程执行Shell指令

《Java实现远程执行Shell指令》文章介绍使用JSch在SpringBoot项目中实现远程Shell操作,涵盖环境配置、依赖引入及工具类编写,详解分号和双与号执行多指令的区别... 目录软硬件环境说明编写执行Shell指令的工具类总结jsch(Java Secure Channel)是SSH2的一个纯J

MySQL8 密码强度评估与配置详解

《MySQL8密码强度评估与配置详解》MySQL8默认启用密码强度插件,实施MEDIUM策略(长度8、含数字/字母/特殊字符),支持动态调整与配置文件设置,推荐使用STRONG策略并定期更新密码以提... 目录一、mysql 8 密码强度评估机制1.核心插件:validate_password2.密码策略级

ShardingProxy读写分离之原理、配置与实践过程

《ShardingProxy读写分离之原理、配置与实践过程》ShardingProxy是ApacheShardingSphere的数据库中间件,通过三层架构实现读写分离,解决高并发场景下数据库性能瓶... 目录一、ShardingProxy技术定位与读写分离核心价值1.1 技术定位1.2 读写分离核心价值二