小编veb*_*ben的帖子

将docker容器连接到本地工作台MySQL DB

我有我的网络应用程序在我的本地机器上运行并连接到Mysql工作台,我现在正在尝试将webapp停靠.我似乎无法连接到我的本地开发机器上的数据库(我正在运行适用于Windows的Docker Desktop),有人能告诉我如何进行此操作吗?这是我到目前为止所拥有的.

`docker run -it -e "CATALINA_OPTS=-Dspring.profiles.active=dev -DPARAM1=DEV" -p 8080:8080 -p 8005:8005 -p 8009:8009 -p 3306:3306 --add-host=docker:192.168.1.7 -v C:\myapp\trunk\target\myapp.war:/usr/local/tomcat/webapps/myapp.war --name waitapp tomcat:8.0.38-jre8`
Run Code Online (Sandbox Code Playgroud)

几秒钟后,我跑了 docker ps -a

CONTAINER ID        IMAGE                  COMMAND                  CREATED             STATUS                           PORTS                                                                                            NAMES
2a1764dd9640        tomcat:8.0.38-jre8     "catalina.sh run"        2 minutes ago       Up 2 minutes                     0.0.0.0:3306->3306/tcp, 0.0.0.0:8005->8005/tcp, 0.0.0.0:8009->8009/tcp, 0.0.0.0:8080->8080/tcp   waitapp
Run Code Online (Sandbox Code Playgroud)

容器似乎正在运行,但是当我尝试其余请求时,我得到404 Not not,这与使用内置tomcat服务器从spring工具套件内部运行时相同.

注意 我不想运行单独的mysql容器并通过网络链接这两个容器,我只是想尝试让我新创建的docker应用程序连接到我的本地数据库MySQL.

mysql docker docker-for-windows docker-desktop

6
推荐指数
1
解决办法
1532
查看次数

Docker 构建导致 Windows 10 上的“设备上没有剩余空间”

当我想在 Windows 上构建我的图像时,我正面临一个奇怪的问题。我没有将Docker用于其他任何用途,因此可以认为安装是全新的。根本没有卷,也没有图像。

当我尝试从我的 Dockerfile 构建我的应用程序时,它以这个错误结束

docker build ./
Sending build context to Docker daemon   1.4 GB
Error response from daemon: Error processing tar file(exit status 1): write /.bowerrc: no space left on device
Run Code Online (Sandbox Code Playgroud)

我读过你可以增加 docker 的 basesize,但我还没有找到适用于 Windows 的解决方案(为什么这在默认情况下甚至受到限制?)

docker info 打印一些东西,但它根本没有显示“存储驱动程序”下的基本大小

$ docker info
Containers: 0
 Running: 0
 Paused: 0
 Stopped: 0
Images: 0
Server Version: 1.13.1
Storage Driver: overlay2
 Backing Filesystem: tmpfs
 Supports d_type: true
 Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs …
Run Code Online (Sandbox Code Playgroud)

docker dockerfile docker-for-windows docker-desktop

6
推荐指数
1
解决办法
5472
查看次数

在Windows上使用ssh连接到docker守护程序

我使用https://docs.docker.com/docker-for-windows/install/#install-docker-for-windows在Windows 10上安装了适用于Windows的Docker Desktop.它不使用VirtualBox和默认VM来托管docker.

我能够运行容器,但我如何使用ssh连接到docker?

docker-machine ls 没有显示我的docker主机.

试图连接到docker@10.0.75.1但它需要密码.而tcuser用于boot2docker VM的不匹配:

ssh docker@10.0.75.1无法创建目录'/home/stan/.ssh'.主机'10 .0.75.1(10.0.75.1)'的真实性无法确定.RSA密钥指纹是....你确定要继续连接(是/否)?是无法将主机添加到已知主机列表(/home/stan/.ssh/known_hosts).docker@10.0.75.1密码:写入失败:由对等方重置连接

docker docker-machine docker-for-windows docker-desktop

6
推荐指数
2
解决办法
8104
查看次数

来自守护程序的错误响应:oci运行时错误:container_linux.go:262:

我刚刚开始使用docker。我已经安装了alpine用于测试Docker工作流的映像,但是在运行后

docker run alpine ls -l
Run Code Online (Sandbox Code Playgroud)

我收到以下错误

来自守护程序的错误响应:oci运行时错误:container_linux.go:262:启动容器进程导致“ exec:\” ls-l \”:在$ PATH中找不到可执行文件”。

我已经在Windows 10中安装了适用于Windows的Docker桌面

docker docker-for-windows docker-desktop

6
推荐指数
1
解决办法
4144
查看次数

无法读取 SafeSubscriber._next 处未定义的属性“push”

无法读取 SafeSubscriber._next 处未定义的属性“push”

import { Component, OnInit } from '@angular/core';
import {StudentService} from '../student.service';
import {student} from '../student';


@Component({
  selector: 'app-studentfrm',
  templateUrl: './studentfrm.component.html',
  styleUrls: ['./studentfrm.component.css'],
  providers:[StudentService]
})
export class StudentfrmComponent implements OnInit {


  students: student[];
  student: student;
    name: string;
  birthdate: string;
  gender: string;
  address: string;
  guardianname: string;
  contact: string;
  email: string;
  Areainterested: string;

  constructor(private studentservice: StudentService) { }

  addstudent()
  {
    const newstudent = {
      name: this.name,
      birthdate: this.birthdate,
      gender: this.gender,
      address: this.address,
      guardianname: this.guardianname,
      contact: this.contact,
      email: this.email,
      Areainterested: this. …
Run Code Online (Sandbox Code Playgroud)

typescript angular angular7

6
推荐指数
1
解决办法
5250
查看次数

DateTimeFormatter为边缘情况提供错误的格式

DateTimeFormatter 未按照以下代码段提供2018年12月30日和31日的正确格式.

final String DATE_FORMAT = "YYYYMM";
DateTimeFormatter dateFormat = DateTimeFormatter.ofPattern(DATE_FORMAT);
LocalDateTime startDate = LocalDateTime.of(2018,12,29,5,0,0);
System.out.println(startDate.format(dateFormat));
//prints 201812
LocalDateTime startDate = LocalDateTime.of(2018,12,30,5,0,0);
System.out.println(startDate.format(dateFormat));
//prints 201912 <------ should be 201812
LocalDateTime startDate = LocalDateTime.of(2018,12,31,5,0,0);
System.out.println(startDate.format(dateFormat));
//prints 201912 <------ should be 201812
Run Code Online (Sandbox Code Playgroud)

这是预期的行为还是DateTimeFormatter存在错误?

java datetime datetime-format java-8

6
推荐指数
2
解决办法
115
查看次数

Docker run -v:无法安装绑定卷:“卷规范无效”

我对 Docker 还很陌生。我在Windows 10 Enterprise上运行,并尝试将在 Windows 上运行的现有应用程序容器化(因此它是Windows 容器)。我不知道这是否重要,但容器相当大(8 GB)。

我需要与应用程序启动时将使用的容器共享一个配置文件(位于主机上)。我认为绑定卷是最简单的。

问题:在运行图像时,我得到docker: Error response from daemon: invalid volume specification: '<source path>:<target path>'

容器是使用以下命令构建的:
docker build -t my_image .

这是 Dockerfile:

FROM mcr.microsoft.com/dotnet/framework/runtime:4.8
WORKDIR /app
COPY . .
ENTRYPOINT .\application.exe ..\Resources
Run Code Online (Sandbox Code Playgroud)

这是我尝试过的
docker run -it -v c:/Users/my_user:/app my_image

  • 我尝试了 C:/、C:\、C:\\、/c/、//c/、\c\、\\c\ 等的每种组合。
  • 我尝试了 /app、//app、\app、\app、C:\app 等的多种组合。
  • 我也尝试过在末尾附加或不附加 :rw
  • 我尝试过 ```--mount``` 语法,它始终输出: docker: 来自守护进程的错误响应:类型“bind”的安装配置无效:无效的安装路径:'/app'。(这里也尝试了 /app 的一系列变体)

  • 我已经尝试了所有可能的组合(除了正确的组合)。请帮忙!

    docker docker-volume docker-for-windows docker-desktop

    6
    推荐指数
    1
    解决办法
    2万
    查看次数

    来自守护程序的错误响应:意外的状态代码 404

    我正在docker registryNexus 3 配置上进行配置。我在 apache 后面运行 Nexus 并启用了 https。

    在命令行上,当我执行 a 时docker search,出现以下错误:

    docker 搜索 my.nexus.net/ubantu

    来自守护程序的错误响应:意外的状态代码 404

    这是调试模式下的守护进程日志:

    DEBU[7519] Calling GET /images/search 
    INFO[7519] GET /v1.19/images/search?term=my.nexus.net%2Fubantu 
    DEBU[7519] pinging registry endpoint https://my.nexus.net/v0/
    DEBU[7519] attempting v2 ping for registry endpoint https://my.nexus.net/v2/
    DEBU[7519] hostDir: /etc/docker/certs.d/my.nexus.net
    DEBU[7519] attempting v1 ping for registry endpoint https://my.nexus.net/v1/
    DEBU[7519] hostDir: /etc/docker/certs.d/my.nexus.net
    DEBU[7519] Error unmarshalling the _ping RegistryInfo: invalid character '<' looking for beginning of value
    DEBU[7519] RegistryInfo.Version: ""
    DEBU[7519] Registry standalone header: ''
    DEBU[7519] …
    Run Code Online (Sandbox Code Playgroud)

    docker nexus3

    5
    推荐指数
    1
    解决办法
    1万
    查看次数

    通过Docker for Mac从Docker Hub中提取的图像的位置是什么

    *注意:我知道这个问题,但是,它与Docker Toolbox有关,而不是与Docker Desktop for Mac有关,似乎每个工具都使用不同的位置来本地存储Docker图像

    在哪里可以找到通过Docker Desktop for Mac从Docker Hub中提取的docker图像?

    我尝试通过以下命令验证Docker是否正在运行.

    docker run hello-world
    
    Run Code Online (Sandbox Code Playgroud)

    因此,Docker守护程序从Docker Hub中取出了"hello-world"图像,但我无法找到它.

    macos docker docker-for-mac docker-desktop

    5
    推荐指数
    1
    解决办法
    667
    查看次数

    使用Docker for Mac创建一个群集群集

    我一直在尝试遵循这个教程:https://docs.docker.com/engine/swarm/swarm-tutorial/

    我没有在一些真正的Linux主机或本地虚拟机上运行它,而是想为几台运行适用于Mac的Docker桌面的MacBook进行网络连接.

    在本教程之后,我在两台机器上安装了适用于Mac的Docker桌面.在第一台机器上的终端docker swarm create工作并创建一个ca哈希和id.

    继续第二台机器,我通过将其从一个粘贴到另一个来执行连接命令.

    第二台机器无法连接.这是预期的,因为输出中显示的IP地址显然是虚拟机内的IP地址,而不是我机器上的地址.我尝试通过指定本地网络适配器的地址从教程转移,但它说它无法绑定到该地址.我知道所有端口都是打开的,机器可以相互连接.

    所以在我看来,我从根本上误解了教程的目的或如何设置两台Mac,以便他们可以进行通信.通过Google搜索解决方案,似乎我需要做几件事:

    运行分布式kv存储来帮助群集网络协调(但这不是新业务流程的重点?)在每台机器上设置从网络适配器到alpine linux docker守护程序的端口隧道放弃并只测试我的集群本地

    更新:经过一些研究后,似乎我应该使用本指南创建一个覆盖网络.但本指南使用的是docker-machine.据我所知,我应该/不能使用docker-machine和Docker桌面用于Mac,或者这是不正确的?

    https://docs.docker.com/engine/userguide/networking/get-started-overlay/

    docker docker-swarm docker-for-mac docker-desktop

    5
    推荐指数
    1
    解决办法
    1203
    查看次数