Linux & Docker常用命令

Linux & Docker常用命令Linux&Docker常用命令

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

目录

一、Docker服务相关命令

二、镜像相关命令

-查看镜像:查看本地所有的镜像

-搜索镜像:从网络中查找需要的镜像

-拉取镜像

-删除镜像

三、容器相关命令

-查看容器

-创建容器

-进入容器

-启动容器

-停止容器

-重启应用

-删除容器

-查看容器信息

四、docker 容器的数据卷

数据卷作用

配置数据卷

数据卷容器

数据卷小结

五、docker应用部署

1、mysql部署

补充:

一、docker宿主主机与容器互相传输文件方式

二、本地与远程的文件互相传输

三、linux下文件查找

四、查看进程和端口


一、Docker服务相关命令

-启动docker 服务

systemctl start docker

-停止docker服务

systemctl stop docker

-重启docker服务

systemctl restart docker

-查看docker服务状态

systemctl status docker

二、镜像相关命令

-查看镜像:查看本地所有的镜像

docker images  #查看本地所有的镜像

docker images -q  #查看所有镜像的id

-搜索镜像:从网络中查找需要的镜像

docker search 镜像名称

eg:docker search redis

-拉取镜像

从docker仓库下载镜像到本地,镜像名称格式为【名称:版本号】,如果版本号不指定则是最新的版本,如果不指定镜像版本,可以去docker hub搜索。

docker pull 镜像名称[:版本号]

-删除镜像

删除本地镜像

docker rmi 镜像id   #删除指定本地镜像

docker rmi `docker images -q`  #删除本地所有镜像

三、容器相关命令

-查看容器

docker ps     #查看正在运行的容器

docker ps -a   #查看所有的容器

-创建容器

docker run 参数

eg:  docker run -it –name=r1 redis:6.2

  1. -i:保持容器运行。通常与-t同时使用,加入it这两个参数后,容器创建后自动进入容器中,退出容器后,容器自动关闭。
  2. -t:为容器重新分配一个伪输入终端,通常与-i同时使用。
  3. -d:以守护(后台)模式运行容器。创建一个容器在后台运行,需要使用docker exec进入容器,退出后,容器不会关闭。
  4. -it创建的容器一般称为交互式容器,-id创建的容器一般称为守护式容器。
  5. –name:为创建的容器命名。

-进入容器

  1. docker exec -it 容器id /bin/bash
  2. docker exec -it 容器id /bin/sh

-启动容器

docker start 容器id

-停止容器

docker stop 容器id

-重启应用

docker-compose down && docker-compose up -d

-删除容器

docker rm 容器id   :删除已经停止的容器

docker rm -f 容器id  :强行删除容器

-查看容器信息

分别执行 hostname、ip addr、env 这三个命令可以获取相关信息

  1. 进入容器内部获取信息
    (2)执行docker exec命令
    (3)执行docker inspect命令(推荐)

第1种:进入容器内部获取信息

docker exec -it 容器id  /bin/bash

第2种:执行docker exec命令

docker exec 容器id  hostname

docker exec 容器id  ip addr

docker exec 容器id  env

第3种:使用docker inspect命令(推荐)

docker  inspect 容器名

四、docker 容器的数据卷

思考:

  1. Docker容器删除后,在容器中产生的数据还存在吗?
  2. Docker容器和外部机器可以直接交换文件吗?-不可以
  3. 容器之间想要进行数据交互?

数据卷******

  1. 数据卷是宿主机中的一个目录或文件
  2. 当容器目录和数据卷目录绑定后,对方的修改会立即同步
  3. 一个数据卷可以被多个容器同时挂载
  4. 一个容器也可以挂载多个数据卷

Linux & Docker常用命令

数据卷作用

  1. 容器数据持久化
  2. 外部机器和容器间接通信
  3. 容器之间数据交换

配置数据卷

创建启动容器时,使用-v参数设置数据卷

docker run … -v 宿主机目录(文件): 容器内目录(文件)

eg:  docker run -it –name=mysql -v /root/data/jcx:/root/container 96d0eae5ed60 /bin/bash

示例:多个容器挂载同一个数据卷,实现不同容器之间的数据交换

Linux & Docker常用命令

容器1: docker run -it –name=A -v /root/jcx:/root/container/data1 mysql /bin/bash

容器2: docker run -it –name=B -v /root/jcx:/root/container/data2 mysql /bin/bash

说明:将容器A和容器B都挂载到数据卷/root/jcx下,实现A、B数据之间同步。

数据卷容器

Linux & Docker常用命令

多容器进行数据交换

  1. 多个容器挂载同一个数据卷
  2. 数据卷容器 (上图中的container c3)

Linux & Docker常用命令

数据卷小结

Linux & Docker常用命令

五、docker应用部署

1、mysql部署

目标:在docker容器中部署mysql,并通过外部mysql客户端操作mysql server.

实现步骤

  1. 搜索mysql镜像
  2. 拉取mysql镜像
  3. 创建容器
  4. 操作容器中的mysql

Linux & Docker常用命令

Linux & Docker常用命令

操作步骤:

在/root 目录下创建mysql目录用于存储mysql数据信息

mkdir /root/mysql

cd  /root/mysql

docker run -id \

-p 3307:3306 \

–name=c_mysql \

-v $PWD/conf:/etc/mysql/conf.d \

-v $PWD/logs:/logs \

-v $PWD/data:/var/lib/mysql \

-e MYSQL_ROOT_PASSWORD=123456 \

mysql

  1. 进入mysql容器

docker exec -it c_mysql /bin/bash

  1. 登陆mysql

mysql -uroot -p123456

Windows上用navicat连接docker上部署的mysql 服务

用宿主机的ip  + 宿主机上数据卷的端口

eg: 192.168.10.7:3307  用户名密码:root/123456

补充:

一、docker宿主主机与容器互相传输文件方式

1、从宿主机器copy文件到容器里

docker cp 要拷贝的文件路径 容器名:容器里的路径

docker cp /jcx/arthas-boot.jar 容器id:/jcx/

2、从容器copy文件到宿主机

docker cp 容器id:/容器里文件路径 宿主机路径

docker cp 容器id:/jcx/a.txt  /jcx/

说明:不管容器有没有启动,拷贝命令都会生效。

二、本地与远程的文件互相传输

scp命令:scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的

1、从本地复制到远程

在本地服务器上将/root/lk目录下所有的文件传输到服务器43.224.34.73的/home/lk/cpfile目录下,命令为:

scp -r /root/lk root@43.224.34.73:/home/lk/cpfile

2、从远程复制到本地

在本地服务器上操作,将服务器43.224.34.73上/home/lk/目录下所有的文件全部复制到本地的/root目录下,命令为:

scp -r root@43.224.34.73:/home/lk /root

三、linux下文件查找

1、find  ***********

在指定目录下查找(常用)

【语法】find path -name filename

find / -name redis

find / -name redis* #模糊匹配

find / -mmin -20 #最近20分钟内修改的文件

find / -mtime -1 #最近一天内修改的文件

2、which

which 从环境变量文件(/etc/profile)中的path目录中查找,且witch找的都是可执行文件

which redis

3、locate

linux系统每天至少自动扫描一次文件,将结果保存到数据库,locate查的是数据库记录。locate查询比find要快,但最新文件如果在数据库中没有记录,是需要手动更新(updatedb)

locate redis

4、whereis

与which类似查询【可执行文件】,whereis查询更多,会查找出相关的man文件

whereis redis

四、查看进程和端口

1、linux查询端口

netstat -anp  #显示所有已开放端口

netstat -anp | grep 80  #查询指定端口通过grep过滤

netstat -tnlp  #显示tcp的端口和进程等相关情况

说明:

Linux & Docker常用命令

2、杀掉占用端口的进程

kill -9  pid

3、Linux查看某个服务是否启动

ps -ef | grep redis

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/193712.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • ubuntu彻底卸载docker_docker安装win10

    ubuntu彻底卸载docker_docker安装win10删除docker程序记事本新建脚本文件a.ps1,内容如下:$ErrorActionPreference=”SilentlyContinue”kill-force-processname’DockerforWindows’,com.docker.db,vpnkit,com.docker.proxy,com.docker.9pdb,moby-diag-dl,dockerd…

    2022年10月9日
    1
  • ubuntu上docker卸载重装[通俗易懂]

    ubuntu上docker卸载重装[通俗易懂]清理docker并重装1、删除容器1)首先需要停止所有的容器dockerstop$(dockerps-a-q)2)删除所有的容器(只删除单个时把后面的变量改为imageid即可)dockerrm$(dockerps-a-q)2、删除镜像1)查看host中的镜像dockerimages2)删除指定id的镜像dockerrmiimageid想要删除untaggedimages,也就是那些id为的image的话可以用dockerrmi$(dockeri

    2022年9月4日
    4
  • 在 docker 之间导出导入镜像「建议收藏」

    在 docker 之间导出导入镜像「建议收藏」很喜欢玩docker,但最新遇到一个问题,公司给的新机器的dns有问题,导致pull不下来镜像。没办法了,没有镜像什么神马都干不了,又不能花很多时间去搭建私有的镜像库,只有另寻办法了。废话少说,经过探究,发现docker提供把镜像导出export(保存save)为文件的机制,这样就可以把镜像copy到任意地方了。1.导…

    2022年9月5日
    2
  • docker启动MySQL报错

    docker启动MySQL报错一.问题描述今天用docker拉取了MySQL镜像,但是启动的时候遇到了问题。error:databaseisuninitializedandpasswordoptionisnotspecifiedYouneedtospecifyoneofMYSQL_ROOT_PASSWORD,MYSQL_ALLOW_EMPTY_PASSWORDandMYSQL_RANDOM_ROOT_PASSWORD二.解决由于没有找到其他帖子上在图形化界面上操作的修改,因此我们选

    2022年10月6日
    0
  • docker 上传本地镜像_不同docker仓库镜像同步

    docker 上传本地镜像_不同docker仓库镜像同步前言之前通过docker搭建过jenkins+python3环境,如果想要在不同的机器上搭建一样的环境,就可以将之前搭建的镜像上传到镜像仓库,这样方便在不同的机器上快速搭建同一套环境。如果公开的话

    2022年7月28日
    5
  • Docker镜像相关命令

    Docker镜像相关命令1、查看docker版本 docker version 2、列出本地主机上的镜像: docker images REPOSITORY:表示镜像的仓库源 TAG:镜像的标签 IMAGE ID:镜像ID CREATED:镜像创建时间 SIZE:镜像大小3、查询镜像 docker search 镜像名称…

    2022年6月13日
    25

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号