1、拉取上传

1.拉取其他主机上传镜像:
将本地nginx镜像删除
[root@Anolis ~]# docker rmi nginx
Untagged: nginx:latest
拉取上传的nginx镜像
[root@Anolis ~]# docker pull 192.168.100.101:5000/nginx
查询本地镜像
[root@Anolis ~]# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
192.168.100.101:5000/nginx latest 2413ab964032 5 months ago 132.8 MB
由于镜像名字过程不方便使用,修改其名称
[root@Anolis ~]# docker tag 192.168.100.101:5000/nginx nginx
[root@Anolis ~]# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
nginx latest 2413ab964032 5 months ago 132.8 MB

2.本地通过nginx镜像运行nginx对应的容器

-i:保持标准输入打开

-t:分配一个虚拟终端

-d:后台运行容器

[root@Anolis2 local]# docker run -itd nginx /bin/bash
b39226bd2e4643af0248af0c6f38564d3840bb27e5d692dbd2c81576b36105cc

查看运行的容器

[root@Anolis2 local]# docker ps -a
CONTAINER ID   IMAGE     COMMAND                   CREATED          STATUS         PORTS     NAMES
b39226bd2e46   nginx     "/docker-entrypoint.…"   10 seconds ago   Up 8 seconds   80/tcp    intelligent_ramanujan
[root@Anolis2 local]#

3.操作当前容易运行的系统

不进入容器,执行命令:

[root@Anolis2 local]# docker exec -it b3922 ls
bin  boot  dev  docker-entrypoint.d  docker-entrypoint.sh  etc  home  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var

进入容器:

-it:交互+终端


[root@Anolis2 local]# docker exec -it b3922 /bin/bash
root@b39226bd2e46:/# ls
bin  boot  dev  docker-entrypoint.d  docker-entrypoint.sh  etc  home  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var
root@b39226bd2e46:/# exit
exit

[root@Anolis2 local]# docker run --name ubuntu -itd ubuntu:22.04 /bin/bash
a894f84bca2f121393f3de713c9decef12ee49a605cc16afb1d5039c6136fb8d
[root@Anolis2 local]# docker exec -it ubuntu /bin/bash
root@a894f84bca2f:/# ls
bin  boot  dev  etc  home  lib  lib32  lib64  libx32  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var
root@a894f84bca2f:/# exit
exit

--restart=always:随着docker启动而启动

[root@Anolis2 local]# docker run --name ubuntu -itd --restart=always ubuntu:22.04 /bin/bash
ea1bf2e74505b53c13942cabbf81cae6a2bbfa30f4e16948c2ec930f1dd7cf0d

-p:端口映射

-e:环境变量,mysql必须设置密码,否则起不来

[root@Anolis2 local]# docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=Password123 --restart=always -itd mysql
cc16c92807533dc173bfac713d0004888d1d6bd8485946b0e37c18dde3db9e7f
[root@Anolis2 local]# docker ps -a
CONTAINER ID   IMAGE          COMMAND                   CREATED          STATUS          PORTS                                                  NAMES
cc16c9280753   mysql          "docker-entrypoint.s…"   10 seconds ago   Up 8 seconds    0.0.0.0:3306->3306/tcp, :::3306->3306/tcp, 33060/tcp   mysql
ea1bf2e74505   ubuntu:22.04   "/bin/bash"               2 minutes ago    Up 2 minutes                                                           ubuntu
b39226bd2e46   nginx          "/docker-entrypoint.…"   11 minutes ago   Up 11 minutes   80/tcp                                                 intelligent_ramanujan
 

[root@Anolis2 local]# docker exec -it mysql /bin/bash
bash-5.1# mysql -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 9
Server version: 9.6.0 MySQL Community Server - GPL

Copyright (c) 2000, 2026, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.007 sec)

mysql>
 

pause:冻结

[root@Anolis2 local]# docker ps -a | grep mysql
cc16c9280753   mysql          "docker-entrypoint.s…"   9 minutes ago    Up 9 minutes    0.0.0.0:3306->3306/tcp, :::3306->3306/tcp, 33060/tcp   mysql
[root@Anolis2 local]# docker pause mysql
mysql
[root@Anolis2 local]# docker ps -a | grep mysql
cc16c9280753   mysql          "docker-entrypoint.s…"   9 minutes ago    Up 9 minutes (Paused)   0.0.0.0:3306->3306/tcp, :::3306->3306/tcp, 33060/tcp   mysql
[root@Anolis2 local]# docker unpause mysql
mysql
[root@Anolis2 local]# docker ps -a | grep mysql
cc16c9280753   mysql          "docker-entrypoint.s…"   9 minutes ago    Up 9 minutes    0.0.0.0:3306->3306/tcp, :::3306->3306/tcp, 33060/tcp   mysql
 

kill:强制杀死

[root@Anolis2 local]# docker kill mysql
mysql
[root@Anolis2 local]# docker ps -a
CONTAINER ID   IMAGE          COMMAND                   CREATED          STATUS                      PORTS     NAMES
cc16c9280753   mysql          "docker-entrypoint.s…"   10 minutes ago   Exited (137) 1 second ago             mysql
ea1bf2e74505   ubuntu:22.04   "/bin/bash"               12 minutes ago   Up 12 minutes                         ubuntu
b39226bd2e46   nginx          "/docker-entrypoint.…"   22 minutes ago   Up 22 minutes               80/tcp    intelligent_ramanujan
 

更多推荐