【Ubuntu18.04 docker 启动容器,进入容器,执行脚本】

这篇具有很好参考价值的文章主要介绍了【Ubuntu18.04 docker 启动容器,进入容器,执行脚本】。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1,启动容器

1. 启动一个docker容器:
    docker start 容器id/容器名称
2. 启动多个docker容器:
   docker start 容器id/容器名称 容器id/容器名称 容器id/容器名称...

sudo docker start gracious_cannon

1,当前容器已经启动,怎么进入呢?



dokcer ps -a 查询正在运行的container

docker exec -it 容器ID /bin/bash 进入容器

exit 退出容器

crnn@crnn-System-Product-Name:~$ sudo docker ps
CONTAINER ID   IMAGE                                                                    COMMAND       CREATED       STATUS          PORTS     NAMES
0bf9637d4edf   registry.baidubce.com/paddlepaddle/serving:0.9.0-cuda10.1-cudnn7-devel   "/bin/bash"   3 hours ago   Up 13 seconds   22/tcp    serene_murdock
crnn@crnn-System-Product-Name:~$ sudo docker exec -it 0bf9637d4edf /bin/bash 
λ 0bf9637d4edf /home cd PaddleOCR/deploy/pdserving/
λ 0bf9637d4edf /home/PaddleOCR/deploy/pdserving {release/2.5} python3.7 web_service.py &>log.txt &
[1] 40
λ 0bf9637d4edf /home/PaddleOCR/deploy/pdserving {release/2.5} 
λ 0bf9637d4edf /home/PaddleOCR/deploy/pdserving {release/2.5} python3.7 pipeline_http_client.py

-----进入步骤

sudo docker exec -it 0bf9637d4edf /bin/bash
cd PaddleOCR/deploy/pdserving/
python3.7 web_service.py &>log.txt &
python3.7 pipeline_http_client.py

一、 docker 服务启动启动

# 开启 docker 自启动
systemctl enable docker.service

# 关闭 docker 自启动
systemctl disable docker.service

二、docker 容器自动启动

# 开启容器自启动
docker update --restart=always 【容器名】
例如:docker update --restart=always tracker


# 关闭容器自启动
docker update --restart=no【容器名】
例如:docker update --restart=no tracker

##### 相关配置解析
no:
    不要自动重启容器。(默认)

on-failure: 
    如果容器由于错误而退出,则重新启动容器,该错误表现为非零退出代码。

always:
    如果容器停止,请务必重启容器。如果手动停止,则仅在Docker守护程序重新启动或手动重新启动容器本身时才重新启动。(参见重启政策详情中列出的第二个项目)

unless-stopped:
    类似于always,除了当容器停止(手动或其他方式)时,即使在Docker守护程序重新启动后也不会重新启动容器。

三、设置容器内的服务自动启动:
1-首先制作一个启动脚本start_fw.sh
参考

#!/bin/bash
cd PaddleOCR/deploy/pdserving/
nohup python3.7 web_service.py &>log.txt &
/bin/bash

2-将容器制作为镜像,然后启动容器

sudo nvidia-docker run -it -p 3001:22 -p 2001:1998 -v /home/crnn/OCR_date:/data --entrypoint=/bin/bash --restart=always --name nginx1 -d registry.baidubce.com/paddlepaddle/serving:0.9.2 /home/PaddleOCR/deploy/pdserving/start_fw.sh

3-文章来源地址https://www.toymoban.com/news/detail-509584.html

# 查看所有启动和未启动的容器
docker ps -a

# 获取到容器id, 使用cp命令将容器内的目录拷贝到本地
docker cp containerID:container_path host_path

 Copyright (c) 2020 PaddlePaddle Authors. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

import numpy as np
import requests
import json
import base64
import os
import argparse
parser = argparse.ArgumentParser(description="args for paddleserving")
parser.add_argument("--image_dir", type=str, default="../../doc/imgs/")
args = parser.parse_args()

def cv2_to_base64(image):
    return base64.b64encode(image).decode('utf8')


url = "http://127.0.0.1:1998/ocr/prediction"
test_img_dir = args.image_dir

for idx, img_file in enumerate(os.listdir(test_img_dir)):
    with open(os.path.join(test_img_dir, img_file), 'rb') as file:
        image_data1 = file.read()
    # print file name
    print('{}{}{}'.format('*' * 10, img_file, '*' * 10))

    image = cv2_to_base64(image_data1)

    data = {"key": ["image"], "value": [image]}
    r = requests.post(url=url, data=json.dumps(data))
    result = r.json()
    print("erro_no:{}, err_msg:{}".format(result["err_no"], result["err_msg"]))
    # check success
    if result["err_no"] == 0:
        ocr_result = result["value"][0]
        try:
            for item in eval(ocr_result):
                # return transcription and points
                print("{}, {}".format(item[0], item[1]))
        except Exception as e:
            print("No results")
            continue

    else:
        print(
            "For details about error message, see PipelineServingLogs/pipeline.log"
        )
print("==> total number of test imgs: ", len(os.listdir(test_img_dir)))



到了这里,关于【Ubuntu18.04 docker 启动容器,进入容器,执行脚本】的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 在Ubuntu 18.04安装Docker

    安装需要的包 $ sudo apt-get update 安装 apt 依赖包,用于通过HTTPS来获取仓库 添加 Docker 的官方 GPG 密钥 设置稳定版仓库 安装 Docker-ce 启动服务 设置开机自启动并启动 Docker-ce 安装成功后默认开启,可忽略该步骤 测试运行 添加当前用户到 docker 用户组 如果仍然无法直接使用dock

    2024年02月07日
    浏览(55)
  • Ubuntu18.04 系统安装 Docker

     

    2024年02月16日
    浏览(48)
  • 【Ubuntu18.04】Docker配置镜像源

    作者主页: 爱笑的男孩。的博客_CSDN博客-深度学习,活动,YOLO领域博主 爱笑的男孩。擅长深度学习,活动,YOLO,等方面的知识,爱笑的男孩。关注算法,python,计算机视觉,图像处理,深度学习,pytorch,神经网络,opencv领域. https://blog.csdn.net/Code_and516?type=blog 个人简介:打工人。 持续分享:

    2024年02月06日
    浏览(49)
  • 如何在Ubuntu 18.04上安装Docker

    选项1:使用默认存储库在Ubuntu上安装Docker 第1步:更新软件存储库 更新本地软件数据库以确保可以访问最新版本。 打开终端并输入: 第2步:卸载旧版本的Docker 建议继续之前卸载任何旧的Docker软件。 使用命令: 第3步:在 Ubuntu 18.04 上安装Docker 在 Ubuntu 上安装Docker,打开终端

    2023年04月26日
    浏览(46)
  • Ubuntu18.04安装docker-io

    1.1 网上一搜,全是更新仓库、下载依赖、添加docker的gpg密钥、添加docker仓库、安装docker-ce的步骤,但是在安装docker-ce时却提示 “ package \\\"docker-ce\\\" has no installation candidate ” ,就很迷。 1.2 安装 docker.io 2.1 按照某文档执行指令\\\" docker run -it img_name:tag /bin/bash \\\",却报错“ docker: Er

    2024年02月10日
    浏览(39)
  • Docker安装和维护mantisbt(Ubuntu 18.04)

    将/etc/apache2/sites-available/default-ssl.conf拷贝为/etc/apache2/sites-available/xxx a2ensite xxx a2enmod ssl systemctl restart apache2

    2024年02月13日
    浏览(43)
  • ubuntu18.04安装docker及docker基本命令的使用

    官网安装步骤:https://docs.docker.com/desktop/install/ubuntu/ docker快速入门教程 Ubuntu-Docker安装和使用 docker官网 docker-hub仓库 (1)镜像操作 (2)容器操作 (3)数据卷操作 https://blog.csdn.net/weixin_43977226/article/details/128411102 构建目录 dockfile 构建镜像 启动容器

    2024年02月14日
    浏览(46)
  • Ubuntu18.04 docker kafka 本地测试环境搭建

    Kafka是一种分布式流处理平台,也是一个高吞吐量的分布式发布订阅消息系统。它由LinkedIn开发,并于2011年成为Apache软件基金会的顶级项目。 Kafka的设计目标是能够处理大规模的消息流,并提供持久性、高吞吐量和低延迟的特性。它的核心概念是发布-订阅模型,其中消息被组

    2024年02月15日
    浏览(62)
  • Ubuntu 18.04 Docker 安装配置 Apollo 6.0

    Apollo 6.0 安装完全指南 在这一步出错: 进入到 Apollo 源码根目录,打开终端,执行下述命令以启动 Apollo Docker 开发容器 并没有成功启动 Apollo docker 开发容器 Apollo 6.0 安装完全指南 下午来了之后在 Apollo 源码根目录下重新执行如下命令以启动 Apollo Docker 容器 很意外居然没有报

    2024年02月16日
    浏览(55)
  • Ubuntu18.04及以上 安装3070ti显卡驱动 超简易方法!黑屏无法进入桌面解决方法以及联想拯救者电脑特殊设置

    接下来的工作要用ZED相机进行稠密地图构建的学习,故正好在新电脑上配置相关环境。 没想到第一步显卡驱动就让我捣鼓了两天,期间经历了无数次电脑黑屏无法进入桌面,大大小小坑都踩了一遍。 但在朋友zigzag的提醒下,发现ubuntu18.04及以上的显卡驱动安装其实是有超简易

    2024年02月09日
    浏览(105)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包