docker

相关命令

1. docker ps 查看容器

2. docker top 容器名/容器ID :查看指定容器里所有运行的程序进程

3.docker exec 进入容器内部

4.docker logs 查看容器的日志

5.docket inspect 查看容器的详细信息

其他知识

1. /var/run/docker.sock socket文件:实现进程和进程之间通信的文件

2.docker 容器技术:
    1.镜像 image --->镜像里面有一个微型的操作系统+核心的应用程序+依赖的软件
    2.仓库  repository  仓库是存放镜像的一个网站
    3.容器  container   容器是运行镜像的地方

3.docker  run  启动一个容器 nginx
  1)先下载镜像 nginx  ---》docker pull
  2)再创建容器  --》docker create
  3)启动容器  ---》docker start
  docker run = docker pull + docker create  +docker start

    eg. 启动一个nginx的容器,使用镜像的版本 为 nginx:1.30.3  ,宿主机监听8081端口 容器监听              80,容器的名字为sc-1,放到后台运行

          -d  daemon 作为一个守护进程在后台运行
          --name  指定容器的名字
          -p 指定发布的端口号 publish  port

          docker run  -d   --name  sc-1  -p   8081:80   nginx:1.30.3
  

Dockers MYSQL8.4.6完整实操

1.下载镜像
docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/mysql:8.4.6
docker tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/mysql:8.4.6  docker.io/mysql:8.4.6

查看镜像
[root@R-docker run]# docker  images

2.启动MySQL容器
docker run  -d  --name sc-mysql-1 -p 3306:3306  -e "MYSQL_ROOT_PASSWORD=sc123456"  mysql:8.4.6

    -e "MYSQL_ROOT_PASSWORD=sc123456"  传递一个环境变量设置MySQL里的root用户的密      码为sc123456

3.进入容器交互式操作

[root@R-docker run]# docker exec -it  sc-mysql-1  bash  进入sc-mysql-1容器内部,执行bash这个解释器程序

-it  开启一个终端,接受用户的输入,可以交互式输入内容
sc-mysql-1 容器的名字
 bash 进入容器里面运行的程序  --》bash是一个解释器,可以接受我们输入的命令
 

容器内操作讲解

cat /etc/oracle-release MySQL 官方镜像底层基于 Oracle Linux 系统,这条命令查看容器内部操作系统版本

mysql -uroot -p'sc123456' 登录 MySQL 数据库

    -uroot  指定用户名是root    MySQL里的超级用户也是root  user
    -p'sc123456'  指定密码为sc123456    password

exit

第一层 exit:退出 mysql 数据库控制台

第二层 exit:退出容器 bash,回到宿主机终端

静态配置IP地址

一、为什么要配置静态 IP

默认网卡使用 DHCP 动态获取 IP,每次重启虚拟机 IP 会随机变化,Xshell 远程连接地址频繁更换,服务器需要固定地址,因此改为手动静态 IP,脱离 DHCP 分配。

二、Rocky10 网卡配置文件路径

 1.进入配置目录

   [root@R-docker ~]# cd  /etc/NetworkManager/system-connections/

 2.修改ens160网卡的配置文件

[root@R-docker system-connections]# vim ens160.nmconnection 
[connection]
id=ens160
uuid=a7b074c2-4339-3fef-b0da-c86ffa99ffff
type=ethernet
autoconnect-priority=-999
interface-name=ens160
timestamp=1783345134

[ethernet]

[ipv4]
method=manual
address1=192.168.10.128/24,192.168.10.2
dns=114.114.114.114;192.168.10.2;

[ipv6]
addr-gen-mode=eui64
method=auto

[proxy]

 3.查看路由表

  [root@R-docker system-connections]# ip  route 查看路由表--》网关

 4.重载网络并重启网卡

  [root@R-docker system-connections]# nmcli c reload  ens160

  [root@R-docker system-connections]# nmcli c down ens160 && nmcli c up ens160  可以生效

如何验证你静态配置ip地址成功了?
1.查看ip
    ip  add
2.查看网关
    ip  route
3.查看dns服务器地址

4.重启系统,进入查看ip、网关、dns服务器地址
    reboot
    init  6

nmcli命令

nmcli是NetworkManager的命令行工具,用于管理Linux网络连接(网卡、WiFi、VPN、网桥、路由、DNS等),主流发行版(CentOS/RHEL、Ubuntu、Debian、Fedora)默认搭载

服务器端:server /usr/sbin/NetworkManager

client 客户端

  1. nmcli c down ens160 关闭ens160网卡接口

      nmcli c up ens160 激活ens160网卡接口

  2. nmcli n off 禁用全部网络

      nmcli n on 打开全部网络

  3. nmcli 查看网络的信息

      1)ip add 查看系统所有网卡、IP地址、网卡运行状态(UP/DOWN)、MAC地址

      2)nmcli d (device)查看系统识别到的硬件网卡设备(ens160、lo、docker0)

      3)nmcli c (connection)查看网卡对应的网络配置文件

其他

grep 命令 :文本过滤

  -i 查找文本的时候,不区分大小写

容器有哪些状态

1)Exited 退出,没有运行

2)up 运行

3)created 只是创建好,没有运行(创建状态)

4)paused 暂停

5)restarting 重启

SSh远程登录 -- SSH协议 (secure shell安全的壳)

                      -- 将windows和linux系统之间传输的数据进行加密

dhcp服务 : 动态主机配置协议  ,docker 里专门有一个dhcp服务器的软件,可以给容器分配内网IP                  -- 配置ip地址和网关、子网掩码、dns服务器地址

相关英语词汇

disable 禁用

enable 启用

socket 槽

更多推荐