Docker(二)

一Docker安装与启动

  • 1.1说明

Docker是基于Ubuntu发布的, 官方建议在Ubuntu中安装, 很多版本的CentOS是不支持更新最新的一些补丁包的

但是个人喜欢用CentOS, 所以一系列操作均在CentOS7 以上版本操作

  • 1.2安装Docker

a. yum包更新到最新

sudo yum update

 b. 安装需要的软件包, yun-util提供yun-config-manager功能, 另外两个是devicemapper驱动依赖的

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

 c. 设置yun源为阿里云

sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

 d. 安装Docker

sudo yum install docker-ce

 e. 安装后查看docker版本

docker -v
  • 1.3设置ustc镜像

ustc是老牌Linux镜像服务提供者, ustc的docker镜像加速器速度很快, ustc docker mirror的优势之一就是不需要注册, 是真正的公共服务, https://lug.ustc.edu.cn/wiki/mirrors/help/docker

a. 编辑文件

vim etc/docker/daemon.json

b. 在文件中输入如下内容

{
"registry-mirrors":["https://docker.mirrors.ustc.edu.cn"]
}

 

  • 1.4Docker的启动与停止

a. 启动docker

systemctl start docker

b. 停止docker

systemctl stop docker

c. 重启docker

systemctl restart docker

d. 查看docker状态

systemctl status docker

e. 开机启动

systemctl enable docker

 f. 查看docker概要信息

docker info

 g, 查看docker帮助文档

docker --help

 二Docker常用命令

2.1 镜像相关命令

  • 2.1.1查看镜像
    docker images
    Repository:  镜像名称
    Tag:         镜像标签
    Imageid:     镜像ID
    Created:     镜像的创建日期(不是获取该镜像的日期)
    Size:        镜像大小
    这些镜像是存储在Docker宿主机的/var/lib/docker目录下
  • 2.1.2搜索镜像
    docker search 镜像名称
    Name: 仓库名称
    Description: 镜像描述
    Stars: 用户评价, 反应一个镜像的受欢迎程度
    Official: 是否官方
    Automated: 自动构建, 表示该镜像由Docker Hub自动构建流程创建的
  • 2.1.3拉取镜像
    docker pull 镜像名称
    docker pull tomcat:8
    

拉取镜像就是从中央仓库中下载镜像到本地

  • 2.1.4删除镜像
    按照镜像ID删除镜像:
    docker rmi 镜像ID
     删除所有镜像:
     docker rmi `docker images -q`

    2.2 容器相关命令

  • 2.2.1查看容器
    查看正在运行的容器: docker ps
    
    查看最后一次运行的容器: docker ps -l
     查看所有容器: docker ps -a
    查看停止的容器: docker ps -f status-exited
  • 2.2.2创建和启动容器
    创建容器命令:  docker run
    -i:      表示运行容器
    -t:      表示容器启动后会进入其命令行
             加入这两个参数后, 容器创建就能登陆进去, 即分配一个伪终端
    --name:  为创建的容器命名
    -v:      表示目录映射关系(前者是宿主机目录, 后者是映射到宿主机上的目录), 可以使用多个-v 做多个目录或文件映射, 
             注意: 最好做目录映射, 在宿主机上做修改, 然后共享到容器上.
    -d:      在run后面加上-d参数, 则会创建一个守护式容器在后台运行(这样创建容器后不会自动登陆容器, 如果只加-i -t 两个参数, 创建后会自动进去容器)
    -p:      表示端口映射, 前者是宿主机端口, 后者是容器内的映射端口, 可以使用多个-p做多个端口映射
    -e       表示设置环境变量
    交互式方式创建容器: 
    docker run -it --name-容器名称 镜像名称:标签(就是TGA) /bin/bash
    说明: 通过命令ps 查看, 容器处于启动状态
    退出当前容器: exit
    交护式方式创建容器效果图: 
    [root@localhost ~]# docker run -it --name==mycentos centos:7 /bin/bash
    [root@3559349be60 ~]#
    说明:
    出现以上表示进入到了容器中;
    centos:7后面的tag, 如果是latest可以不写;
    使用ll命令可查看目录.
    
    守护式方式创建容器:
    docker run -di --name=容器名称 镜像名称:标签
    登陆守护式容器方式:
    docker exec -it 容器名称(或者容器id) /bin/bash
  • 2.2.3停止和启动容器
    docker start 容器名称(或者容器ID)
    docker stop  容器名称(或者容器ID)
  • 2.2.4文件拷贝
    需要将文件拷贝到容器中可以使用cp命令
    docker cp 需要拷贝的文件或者目录 容器名称:容器目录
    也可以将文件从容器内拷贝出来
    docker cp 容器名称:容器目录 需要拷贝的文件或目录
  • 2.2.5目录挂载
    说明: 宿主机目录与容器目录映射, 当修改任意一方目录及其文件的时候, 另一方目录也会发生相应改变
    docker run -di -v /usr/local/myhtml:/usr/local/myhtml --name=mycentos centos:7
  • 2.2.6查看容器IP地址
    查看容器的所有数据:
    docker inspect 容器名称(或者容器ID)
    也可以从所有数据中进行筛选, 如下我要筛选容器IP地址:
    docker inspect --format='{{.NetworkSettings.IPAddress}}' 容器名称(或者容器ID)
    

三应用部署

  1. MySQL部署
    拉取mysql镜像: docker pull mysql:8
    创建容器:      docker run -di --name=mysql_1 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:8
    进入容器:      docker exec -it mysql_1 /bin/bash
    登陆mysql:     mysql -u root -p
    
  2. Tomcat部署
    docker pull tomcat:8
    docker run -di --name=mytomcat -p 8500:8080 -v /usr/local/webapps:/usr/local/tomcat/webapps tomcat:8
    因为设置了目录映射, 此时访问是没有东西的, 需要把项目放到宿主机/usr/local/webapps下面
    访问: localhost:8500/项目访问路径
  3. Nginx部署
    docker pull nginx
    docker run -di --name=mynginx -p 80:80 nginx
    nginx更改自己的html页面:
    1. 查看nginx的配置:
        cd /etc/nginx/
        cat nginx.conf
    此时可以看到nginx的基本配置, 如下有一部分:
    ...
    http {
        ...
        include /etc/nginx/conf.d/*.conf;
    }
    ...
        以上include表示, nginx有可以多个配置文件, 通过include进行导入
    2. 进入到*.conf所在目录, 查看该文件:
        cd /etc/nginx/conf.d/
        cat default.conf
    部分信息如下:
    server{
        ...
        location / {
           root  /usr/share/nginx/html;   
        }
        ...
    }
    3. 以上html文件夹就是访问nginx的初始页面所在地方, 可以把自己的页面所在文件夹直接覆盖nginx
    4. 对于一个web项目, 可以配置tomcat到nginx
  4. Redis部署
    docker pull redis
    docker run -di --name=myredis -p 6379:6379 redis
  5. 同步容器和宿主机的时间

    docker cp /etc/localtime {container名称}:/etc/localtime

     

 

 

 

 

 

 

 

 

 

内容概要:本文详细介绍了扫描单分子定位显微镜(scanSMLM)技术及其在三维超分辨体积成像中的应用。scanSMLM通过电调透镜(ETL)实现快速轴向扫描,结合4f检测系统将不同焦平面的荧光信号聚焦到固定成像面,从而实现快速、大视场的三维超分辨成像。文章不仅涵盖了系统硬件的设计与实现,还提供了详细的软件代码实现,包括ETL控制、3D样本模拟、体积扫描、单分子定位、3D重建和分子聚类分析等功能。此外,文章还比较了循环扫描与常规扫描模式,展示了前者在光漂白效应上的优势,并通过荧光珠校准、肌动蛋白丝、线粒体网络和流感A病毒血凝素(HA)蛋白聚类的三维成像实验,验证了系统的性能和应用潜力。最后,文章深入探讨了HA蛋白聚类与病毒感染的关系,模拟了24小时内HA聚类的动态变化,提供了从分子到细胞尺度的多尺度分析能力。 适合人群:具备生物学、物理学或工程学背景,对超分辨显微成像技术感兴趣的科研人员,尤其是从事细胞生物学、病毒学或光学成像研究的科学家和技术人员。 使用场景及目标:①理解和掌握scanSMLM技术的工作原理及其在三维超分辨成像中的应用;②学习如何通过Python代码实现完整的scanSMLM系统,包括硬件控制、图像采集、3D重建和数据分析;③应用于单分子水平研究细胞内结构和动态过程,如病毒入侵机制、蛋白质聚类等。 其他说明:本文提供的代码不仅实现了scanSMLM系统的完整工作流程,还涵盖了多种超分辨成像技术的模拟和比较,如STED、GSDIM等。此外,文章还强调了系统在硬件改动小、成像速度快等方面的优势,为研究人员提供了从理论到实践的全面指导。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值