虚拟机Linux-Centos系统网络配置常用命令+Docker 的常用命令

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,高可用系列 2核4GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 虚拟机Linux-Centos系统网络配置常用命令+Docker 的常用命令

1、虚拟机Linux-Centos系统网络配置常用命令

  1. 进入网络配置文件目录
cd /etc/sysconfig/network-scripts/
  1. ls 命令查看文件:ls

  2. 编辑ifcfg-ens33文件
vi ifcfg-ens33

按 i 进入insert编辑模式

BOOTPROTO=static  启用静态IP地址
ONBOOT=yes      开启自动启用网络连接
IPADDR=192.168.30.100     设置IP地址
NETMASK=255.255.255.0   子网掩码
GATEWAY=192.168.30.2   设置网关

按下Esc进入命令模式输入:wq保存并退出。

  1. 重启网卡
service network restart
  1. 查看IP
ip addr

  1. 测试外网连接
ping www.baidu.com

显示ping通baidu啦,外网连接成功!!ctr+c退出。

  1. 查看操作系统版本:
cat /etc/redhat-release
  1. 查询是否是64位:
uname -r

2、Docker 的常用命令

  1. 查看版本号:
docker version
  1. 查看当前 docker 信息:
docker info
  1. 查看所有镜像:
docker images 或 docker image ls (-a 查看运行和非运行的容器,-q 返回正在运行的容器 id,-qa 返回所有容器的 id)
  1. 拉取一个镜像:
docker pull 镜像名称
  1. 删除一个镜像:
docker rmi 镜像名称
  1. 强制删除一个镜像:
docker rmi -f 镜像名称
  1. 运行一个容器:
docker run 镜像名称 (-p 将宿主机端口和容器端口进行映射,-d 代表后台运行,--name 表示给容器取一个名字,-v 宿主机目录(绝对路径):容器内目录 实现宿主机目录和容器内目录)
docker run --name myhd -dp 9000:8080 hello-docker:1.0
  1. 查看当前正在运行的容器:
docker ps (-a 显示所有的容器,-q 只显示正在运行的容器)
  1. 启动容器:
docker start 容器ID或容器名
  1. 停止容器:
docker stop 容器ID或容器名
  1. 强杀容器:
docker kill 容器ID或容器名
  1. 容器的进入与退出:使用run方式在创建时进入
docker run -it redis /bin/bash
  1. 查看容器日志:查看redis容器日志
docker logs Redis
  1. 重启docker命令:
systemctl restart docker
  1. 查看docker状态:
systemctl status docker
  1. 设置自启动docker:
systemctl enable docker
  1. 设置不启动docker:
systemctl disable docker
  1. 停止docker:
systemctl stop docker

查看文件:cat hello.log

删除文件:rm -rf hello.log

重命名文件: mv xxx xxxx

查看docker中所有容器:docker ps -a

删除全部docker容器: docker rm -f $(docker ps -qa)

构建docker容器(不要忘记最后一个点):docker build -t hello-docker:1.0 .

运行docker容器:docker run --name myhd -dp 9000:8080 hello-docker:1.0

进行docker容器:docker exec -it xxx /bin/bash

查看所有文件:ls -l

2.1 安装docker步骤命令
  1. 安装工具:
yum install -y yum-utils
  1. 配置阿里云镜像:
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
  1. 查看配置:
ll /etc/yum.repos.d
  1. 安装docker:
yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
  1. 启动docker:
systemctl start docker
  1. 查看docker版本:
docker version
  1. 查看docker中已安装的镜像:
docker images
2.2 在docker容器中安装和运行mysql
  1. 拉取mysql:
docker pull mysql:5.7
  1. 运行mysql:
docker run --name mysql -dp 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7
  1. 进入mysql:
docker exec -it mysql /bin/bash
  1. 进入mysql:
mysql -uroot -p
  1. 查看数据库:
show databases;
  1. 创建test数据库:
create database test;
  1. 切换使用test数据库:
use test;
  1. 创建一张emp的表:
create table emp(id int,name varchar(20),depart varchar(20));
  1. 插入多条数据:
insert into emp values(1,'zs','market');
  1. 查看数据:
select * from emp;
  1. 查看数据库中字符串支持的格式:
show variables like 'character%';
  1. 为当前 MySQL 创建一个用户:
create user 'slave'@'%' identified by '123456';
  1. 为新创建的用户授权:
grant replication slave,replication client on *.* to 'slave'@'%';
  1. 查询权限:
show grants for 'slave'@'%';
  1. 复制目录 :
cp -r mysql mysql_master
  1. 删除目录:
rm -rf data/ log/
  1. 启动mysql容器:
docker run --name mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
-v /root/mysql/data:/var/lib/mysql \
-v /root/mysql/log:/var/log/mysql \
-v /root/mysql/conf:/etc/mysql/conf.d \
-dp 3306:3306 \
mysql:5.7

2、dockerfile关键字区别(ADD/COPY,CMD/ENTRYPOINT)

  1. ADD和COPY
    两者都是将文件从宿主机拷贝到docker容器里面,ADD更为强大,如果拷贝的是个压缩包会自动解压,但一般常用的COPY
  2. CMD和ENTRYPOINT
    两者都是容器启动时执行的命令,不同的是一个是覆盖原有命令,一个是在原有命令上追加
  3. CMD
    docker run 之后加的参数,如果是CMD,会直接覆盖掉原有CMD命令,变为参数
//dockerfile
....
CMD ["cd /tmp"]
docker run image  //会直接执行cd /tmp命令到tmp目录
docker run image cd /usr   //这个命令会将dockerfile中的命令覆盖掉,目录会到usr
  1. ENTRYPOINT
    docker run 后面追加参数的话,不会覆盖原有dockerfile中的命令,而是在后面追加
//dockerfile
....
ENTRYPOINT ["cd /tmp"]
docker run image  //会直接执行cd /tmp命令到tmp目录
docker run image cd /usr   //会先cd到tmp,再cd到usr
  1. 当CMD和ENTRYPOINT同时存在时
    ENTRYPOINT和CMD两个命令的先后顺序无关;
    当ENTRYPOINT使用shell语法时,无论CMD使用什么语法以及docker run有没有附加command,都只执行ENTRYPOINT
//情况一
ENTRYPOINT echo "e"
CMD echo "c"
docker run不附加command //输出 e
docker run附加command(echo "hi") //输出 e
//情况二
ENTRYPOINT echo e
CMD ["echo","c"]
docker run不附加command //输出结果: e
docker run附加command(echo "hi")//输出结果: e
  1. 当ENTRYPOINT使用可执行文件加参数的语法时,分两种情况:
    docker run没有附加command:无论CMD使用什么语法,CMD指令的内容会作 为参数传递给ENTRYPOINT;
- 情况一
ENTRYPOINT ["echo","e"]
CMD echo "c"
docker run不附加command  //输出结果: e /bin/sh -c echo c
- 情况二
ENTRYPOINT ["echo","e"]
CMD ["echo","c"]
docker run不附加command  //输出结果: e echo c

docker run附加了command:无论CMD使用什么语法,CMD指令会被docker run 中的command覆盖,command作为参数传递给ENTRYPOINT。

//情况一
ENTRYPOINT ["echo","e"]
CMD echo "c"
docker run附加command(echo “hi”)  //输出结果: e  echo hi
//情况二
ENTRYPOINT ["echo","e"]
CMD ["echo","c"]
docker run附加command(echo “hi”)  //输出结果: e echo hi
目录
相关文章
|
3月前
|
存储 分布式计算 Linux
安装篇--CentOS 7 虚拟机安装
VMware 装 CentOS 7 不知道从哪下手?这篇超详细图文教程手把手教你在 VMware Workstation 中完成 CentOS 7 桌面系统的完整安装流程。从 ISO 镜像下载、虚拟机配置,到安装图形界面、设置用户密码,每一步都有截图讲解,适合零基础新手快速上手。装好之后无论你是要搭 Hadoop 集群,还是练 Linux ,这个环境都够你折腾一整天!
1166 2
|
2月前
|
应用服务中间件 Linux nginx
在虚拟机Docker环境下部署Nginx的步骤。
以上就是在Docker环境下部署Nginx的步骤。需要注意,Docker和Nginix都有很多高级用法和细节需要掌握,以上只是一个基础入门级别的教程。如果你想要更深入地学习和使用它们,请参考官方文档或者其他专业书籍。
131 5
|
3月前
|
安全 Linux 网络安全
Nipper 3.9.0 for Windows & Linux - 网络设备漏洞评估
Nipper 3.9.0 for Windows & Linux - 网络设备漏洞评估
111 0
Nipper 3.9.0 for Windows & Linux - 网络设备漏洞评估
|
4月前
|
运维 Linux 开发者
Linux系统中使用Python的ping3库进行网络连通性测试
以上步骤展示了如何利用 Python 的 `ping3` 库来检测网络连通性,并且提供了基本错误处理方法以确保程序能够优雅地处理各种意外情形。通过简洁明快、易读易懂、实操性强等特点使得该方法非常适合开发者或系统管理员快速集成至自动化工具链之内进行日常运维任务之需求满足。
256 18
|
4月前
|
网络协议 关系型数据库 Linux
【App Service Linux】在Linux App Service中安装 tcpdump 并抓取网络包
在App Service for Linux环境中,无法像Windows一样直接使用网络排查工具抓包。本文介绍了如何通过TCPDUMP在Linux环境下抓取网络包,包括SSH进入容器、安装tcpdump、执行抓包命令及下载分析文件的完整操作步骤。
214 5
|
5月前
|
Web App开发 网络协议 Linux
【Linux】网络基础
TCP/IP五层模型是网络通信的基础框架,将复杂的数据传输过程分为物理层、数据链路层、网络层、传输层和应用层,每层各司其职,协同完成远程通信。该模型确保了不同设备和网络之间的互联互通,是现代互联网运行的核心机制。
326 5
|
5月前
|
网络协议 Linux 开发者
深入Linux中UDP网络通信机制编程探索
以上步骤概述了Linux中UDP网络通信的编程机制。在实现时,因关注细节和上下文环境可能有所调整,但大致流程是一致的。这些知识片段旨在帮助开发者快速上手Linux下的UDP编程,并提供可靠的信息作为编程的基础。在编程实践中,应结合实际业务需求,设计合适的数据传输协议,确保数据的正确性和实时性。
139 0
|
7月前
|
安全 网络协议 Linux
Linux网络应用层协议展示:HTTP与HTTPS
此外,必须注意,从HTTP迁移到HTTPS是一项重要且必要的任务,因为这不仅关乎用户信息的安全,也有利于你的网站评级和粉丝的信心。在网络世界中,信息的安全就是一切,选择HTTPS,让您的网站更加安全,使您的用户满意,也使您感到满意。
206 18
|
域名解析 网络协议 Linux
linux网络配置详解
linux网络配置详解
1016 0

热门文章

最新文章