我是Docker的新手,并试图通过本教程从Docker镜像设置MemSQL - http://docs.memsql.com/4.0/setup/docker/。我在Mac上,教程使用的boot2docker
似乎已被弃用。
VM需要4GB内存才能运行。本教程指定了如何使用boot2docker
执行此操作,但我找不到使用docker-machine / docker工具箱执行此操作的方法。
这是我正在使用的命令以及我正在尝试通过教程而不改变boot2docker配置的错误。
docker run --rm --net=host memsql/quickstart check-system
Error: MemSQL requires at least 4 GB of memory to run.
答案 0 :(得分:157)
您可以通过命令行执行此操作。例如,要从默认的1cpu / 2048MB RAM运行更改机器:
docker-machine stop
VBoxManage modifyvm default --cpus 2
VBoxManage modifyvm default --memory 4096
docker-machine start
答案 1 :(得分:105)
创建docker机器时,可以指定内存大小:
docker-machine create -d virtualbox --virtualbox-memory 4096 default
如果有帮助,请告诉我。
答案 2 :(得分:73)
对于Docker版本1.12.1(版本号:12133)及更高版本的macOS,可以选择从UI更改CPU和RAM并重启docker。您可以从工具栏中找到首选项。为了清晰起见,附上图像。
步骤:偏好设置 - > 高级 - >调整资源 - > 申请&重新启动强>
答案 3 :(得分:40)
Docker Machine维护者在这里。我不认为手动调整config.json
会起作用。
您的两个选项是创建设置为--virtualbox-memory
的计算机,或者调整VirtualBox GUI中的VM内存(我认为该虚拟机的“设置>系统”)。确保机器已关闭,并且应该有一个小滑块可以工作。
编辑:另一个答案显示您可以使用VBoxManage
从命令行执行就地操作。
答案 4 :(得分:11)
我无法得到其他工作的答案。唯一对我有用的是删除默认机器并用更多内存重新创建它。
docker-machine rm default
docker-machine create -d virtualbox --virtualbox-memory=4096 --virtualbox-cpu-count=2 --virtualbox-disk-size=50000 default
此修复程序位于此处:Angular $scope.$apply vs $timeout as a safe $apply
答案 5 :(得分:11)
其他答案显示了如何使用VBoxManage更改内存:
<Window x:Class="Notifications.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:Notifications"
mc:Ignorable="d"
Title="Fun with Notifications!" Height="225" Width="325" WindowStartupLocation="CenterOwner">
<Grid IsSharedSizeScope="True" Margin="5,0,5,5">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<Grid Grid.Row="0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" SharedSizeGroup="CarLabels"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Label Grid.Column="0" Content="Vehicle"/>
<ComboBox Name="cboCars" Grid.Column="1" DisplayMemberPath="PetName" />
</Grid>
<Grid Grid.Row="1" DataContext="{Binding ElementName=cboCars, Path=SelectedItem}">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" SharedSizeGroup="CarLabels"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="30"/> <!--If set to auto, it will stack over the next row-->
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<Label Grid.Column="0" Grid.Row="0" Content="Id"/>
<TextBox Grid.Column="1" Grid.Row="0" Text="{Binding Path=CarId}" />
<Label Grid.Column="0" Grid.Row="1" Content="Make" Grid.RowSpan="2"/>
<TextBox Grid.Column="1" Grid.Row="1" Text="{Binding Path=Make}" Grid.RowSpan="2" />
<Label Grid.Column="0" Grid.Row="2" Content="Color"/>
<TextBox Grid.Column="1" Grid.Row="2" Text="{Binding Path=Color, UpdateSourceTrigger=PropertyChanged}"/>
<Label Grid.Column="0" Grid.Row="3" Content="Pet Name"/>
<TextBox Grid.Column="1" Grid.Row="3" Text="{Binding Path=PetName}"/>
<StackPanel Grid.Column="1" Grid.Row="4" HorizontalAlignment="Right" Orientation="Horizontal" Margin="0,5,0,5">
<Button x:Name="btnAddCar" Content="Add Car" Margin="5,0,5,0" Padding="4, 2" Click="btnAddCar_Click"/>
<Button x:Name="btnChangeColor" Content="Change Color" Margin="5,0,5,0" Padding="4, 2" Click="btnChangeColor_Click"/>
<Button x:Name="btnRemoveCar" Content="Remove Car" Margin="5,0,5,0" Padding="4,2" Click="btnRemoveCar_Click"/>
</StackPanel>
<Label Grid.Column="0" Grid.Row="5" Content="Is Changed"/>
<CheckBox Grid.Column="1" Grid.Row="5" VerticalAlignment="Center" Margin="10,5,0,5" IsEnabled="False" IsChecked="{Binding Path=IsChanged}" />
</Grid>
</Grid>
</Window>
从命令行确认更改:
docker-machine stop default
VBoxManage modifyvm default --memory 4096
docker-machine start default
OR
VBoxManage showvminfo default | grep Memory
答案 6 :(得分:3)